dist.framework.js 1.2 MB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546235472354823549235502355123552235532355423555235562355723558235592356023561235622356323564235652356623567235682356923570235712357223573235742357523576235772357823579235802358123582235832358423585235862358723588235892359023591235922359323594235952359623597235982359923600236012360223603236042360523606236072360823609236102361123612236132361423615236162361723618236192362023621236222362323624236252362623627236282362923630236312363223633236342363523636236372363823639236402364123642236432364423645236462364723648236492365023651236522365323654236552365623657236582365923660236612366223663236642366523666236672366823669236702367123672236732367423675236762367723678236792368023681236822368323684236852368623687236882368923690236912369223693236942369523696236972369823699237002370123702237032370423705237062370723708237092371023711237122371323714237152371623717237182371923720237212372223723237242372523726237272372823729237302373123732237332373423735237362373723738237392374023741237422374323744237452374623747237482374923750237512375223753237542375523756237572375823759237602376123762237632376423765237662376723768237692377023771237722377323774237752377623777237782377923780237812378223783237842378523786237872378823789237902379123792237932379423795237962379723798237992380023801238022380323804238052380623807238082380923810238112381223813238142381523816238172381823819238202382123822238232382423825238262382723828238292383023831238322383323834238352383623837238382383923840238412384223843238442384523846238472384823849238502385123852238532385423855238562385723858238592386023861238622386323864238652386623867238682386923870238712387223873238742387523876238772387823879238802388123882238832388423885238862388723888238892389023891238922389323894238952389623897238982389923900239012390223903239042390523906239072390823909239102391123912239132391423915239162391723918239192392023921239222392323924239252392623927239282392923930239312393223933239342393523936239372393823939239402394123942239432394423945239462394723948239492395023951239522395323954239552395623957239582395923960239612396223963239642396523966239672396823969239702397123972239732397423975239762397723978239792398023981239822398323984239852398623987239882398923990239912399223993239942399523996239972399823999240002400124002240032400424005240062400724008240092401024011240122401324014240152401624017240182401924020240212402224023240242402524026240272402824029240302403124032240332403424035240362403724038240392404024041240422404324044240452404624047240482404924050240512405224053240542405524056240572405824059240602406124062240632406424065240662406724068240692407024071240722407324074240752407624077240782407924080240812408224083240842408524086240872408824089240902409124092240932409424095240962409724098240992410024101241022410324104241052410624107241082410924110241112411224113241142411524116241172411824119241202412124122241232412424125241262412724128241292413024131241322413324134241352413624137241382413924140241412414224143241442414524146241472414824149241502415124152241532415424155241562415724158241592416024161241622416324164241652416624167241682416924170241712417224173241742417524176241772417824179241802418124182241832418424185241862418724188241892419024191241922419324194241952419624197241982419924200242012420224203242042420524206242072420824209242102421124212242132421424215242162421724218242192422024221242222422324224242252422624227242282422924230242312423224233242342423524236242372423824239242402424124242242432424424245242462424724248242492425024251242522425324254242552425624257242582425924260242612426224263242642426524266242672426824269242702427124272242732427424275242762427724278242792428024281242822428324284242852428624287242882428924290242912429224293242942429524296242972429824299243002430124302243032430424305243062430724308243092431024311243122431324314243152431624317243182431924320243212432224323243242432524326243272432824329243302433124332243332433424335243362433724338243392434024341243422434324344243452434624347243482434924350243512435224353243542435524356243572435824359243602436124362243632436424365243662436724368243692437024371243722437324374243752437624377243782437924380243812438224383243842438524386243872438824389243902439124392243932439424395243962439724398243992440024401244022440324404244052440624407244082440924410244112441224413244142441524416244172441824419244202442124422244232442424425244262442724428244292443024431244322443324434244352443624437244382443924440244412444224443244442444524446244472444824449244502445124452244532445424455244562445724458244592446024461244622446324464244652446624467244682446924470244712447224473244742447524476244772447824479244802448124482244832448424485244862448724488244892449024491244922449324494244952449624497244982449924500245012450224503245042450524506245072450824509245102451124512245132451424515245162451724518245192452024521245222452324524245252452624527245282452924530245312453224533245342453524536245372453824539245402454124542245432454424545245462454724548245492455024551245522455324554245552455624557245582455924560245612456224563245642456524566245672456824569245702457124572245732457424575245762457724578245792458024581245822458324584245852458624587245882458924590245912459224593245942459524596245972459824599246002460124602246032460424605246062460724608246092461024611246122461324614246152461624617246182461924620246212462224623246242462524626246272462824629246302463124632246332463424635246362463724638246392464024641246422464324644246452464624647246482464924650246512465224653246542465524656246572465824659246602466124662246632466424665246662466724668246692467024671246722467324674246752467624677246782467924680246812468224683246842468524686246872468824689246902469124692246932469424695246962469724698246992470024701247022470324704247052470624707247082470924710247112471224713247142471524716247172471824719247202472124722247232472424725247262472724728247292473024731247322473324734247352473624737247382473924740247412474224743247442474524746247472474824749247502475124752247532475424755247562475724758247592476024761247622476324764247652476624767247682476924770247712477224773247742477524776247772477824779247802478124782247832478424785247862478724788247892479024791247922479324794247952479624797247982479924800248012480224803248042480524806248072480824809248102481124812248132481424815248162481724818248192482024821248222482324824248252482624827248282482924830248312483224833248342483524836248372483824839248402484124842248432484424845248462484724848248492485024851248522485324854248552485624857248582485924860248612486224863248642486524866248672486824869248702487124872248732487424875248762487724878248792488024881248822488324884248852488624887248882488924890248912489224893248942489524896248972489824899249002490124902249032490424905249062490724908249092491024911249122491324914249152491624917249182491924920249212492224923249242492524926249272492824929249302493124932249332493424935249362493724938249392494024941249422494324944249452494624947249482494924950249512495224953249542495524956249572495824959249602496124962249632496424965249662496724968249692497024971249722497324974249752497624977249782497924980249812498224983249842498524986249872498824989249902499124992249932499424995249962499724998249992500025001250022500325004250052500625007250082500925010250112501225013250142501525016250172501825019250202502125022250232502425025250262502725028250292503025031250322503325034250352503625037250382503925040250412504225043250442504525046250472504825049250502505125052250532505425055250562505725058250592506025061250622506325064250652506625067250682506925070250712507225073250742507525076250772507825079250802508125082250832508425085250862508725088250892509025091250922509325094250952509625097250982509925100251012510225103251042510525106251072510825109251102511125112251132511425115251162511725118251192512025121251222512325124251252512625127251282512925130251312513225133251342513525136251372513825139251402514125142251432514425145251462514725148251492515025151251522515325154251552515625157251582515925160251612516225163251642516525166251672516825169251702517125172251732517425175251762517725178251792518025181251822518325184251852518625187251882518925190251912519225193251942519525196251972519825199252002520125202252032520425205252062520725208252092521025211252122521325214252152521625217252182521925220252212522225223252242522525226252272522825229252302523125232252332523425235252362523725238252392524025241252422524325244252452524625247252482524925250252512525225253252542525525256252572525825259252602526125262252632526425265252662526725268252692527025271252722527325274252752527625277252782527925280252812528225283252842528525286252872528825289252902529125292252932529425295252962529725298252992530025301253022530325304253052530625307253082530925310253112531225313253142531525316253172531825319253202532125322253232532425325253262532725328253292533025331253322533325334253352533625337253382533925340253412534225343253442534525346253472534825349253502535125352253532535425355253562535725358253592536025361253622536325364253652536625367253682536925370253712537225373253742537525376253772537825379253802538125382253832538425385253862538725388253892539025391253922539325394253952539625397253982539925400254012540225403254042540525406254072540825409254102541125412254132541425415254162541725418254192542025421254222542325424254252542625427254282542925430254312543225433254342543525436254372543825439254402544125442254432544425445254462544725448254492545025451254522545325454254552545625457254582545925460254612546225463254642546525466254672546825469254702547125472254732547425475254762547725478254792548025481254822548325484254852548625487254882548925490254912549225493254942549525496254972549825499255002550125502255032550425505255062550725508255092551025511255122551325514255152551625517255182551925520255212552225523255242552525526255272552825529255302553125532255332553425535255362553725538255392554025541255422554325544255452554625547255482554925550255512555225553255542555525556255572555825559255602556125562255632556425565255662556725568255692557025571255722557325574255752557625577255782557925580255812558225583255842558525586255872558825589255902559125592255932559425595255962559725598255992560025601256022560325604256052560625607256082560925610256112561225613256142561525616256172561825619256202562125622256232562425625256262562725628256292563025631256322563325634256352563625637256382563925640256412564225643256442564525646256472564825649256502565125652256532565425655256562565725658256592566025661256622566325664256652566625667256682566925670256712567225673256742567525676256772567825679256802568125682256832568425685256862568725688256892569025691256922569325694256952569625697256982569925700257012570225703257042570525706257072570825709257102571125712257132571425715257162571725718257192572025721257222572325724257252572625727257282572925730257312573225733257342573525736257372573825739257402574125742257432574425745257462574725748257492575025751257522575325754257552575625757257582575925760257612576225763257642576525766257672576825769257702577125772257732577425775257762577725778257792578025781257822578325784257852578625787257882578925790257912579225793257942579525796257972579825799258002580125802258032580425805258062580725808258092581025811258122581325814258152581625817258182581925820258212582225823258242582525826258272582825829258302583125832258332583425835258362583725838258392584025841258422584325844258452584625847258482584925850258512585225853258542585525856258572585825859258602586125862258632586425865258662586725868258692587025871258722587325874258752587625877258782587925880258812588225883258842588525886258872588825889258902589125892258932589425895258962589725898258992590025901259022590325904259052590625907259082590925910259112591225913259142591525916259172591825919259202592125922259232592425925259262592725928259292593025931259322593325934259352593625937259382593925940259412594225943259442594525946259472594825949259502595125952259532595425955259562595725958259592596025961259622596325964259652596625967259682596925970259712597225973259742597525976259772597825979259802598125982259832598425985259862598725988259892599025991259922599325994259952599625997259982599926000260012600226003260042600526006260072600826009260102601126012260132601426015260162601726018260192602026021260222602326024260252602626027260282602926030260312603226033260342603526036260372603826039260402604126042260432604426045260462604726048260492605026051260522605326054260552605626057260582605926060260612606226063260642606526066260672606826069260702607126072260732607426075260762607726078260792608026081260822608326084260852608626087260882608926090260912609226093260942609526096260972609826099261002610126102261032610426105261062610726108261092611026111261122611326114261152611626117261182611926120261212612226123261242612526126261272612826129261302613126132261332613426135261362613726138261392614026141261422614326144261452614626147261482614926150261512615226153261542615526156261572615826159261602616126162261632616426165261662616726168261692617026171261722617326174261752617626177261782617926180261812618226183261842618526186261872618826189261902619126192261932619426195261962619726198261992620026201262022620326204262052620626207262082620926210262112621226213262142621526216262172621826219262202622126222262232622426225262262622726228262292623026231262322623326234262352623626237262382623926240262412624226243262442624526246262472624826249262502625126252262532625426255262562625726258262592626026261262622626326264262652626626267262682626926270262712627226273262742627526276262772627826279262802628126282262832628426285262862628726288262892629026291262922629326294262952629626297262982629926300263012630226303263042630526306263072630826309263102631126312263132631426315263162631726318263192632026321263222632326324263252632626327263282632926330263312633226333263342633526336263372633826339263402634126342263432634426345263462634726348263492635026351263522635326354263552635626357263582635926360263612636226363263642636526366263672636826369263702637126372263732637426375263762637726378263792638026381263822638326384263852638626387263882638926390263912639226393263942639526396263972639826399264002640126402264032640426405264062640726408264092641026411264122641326414264152641626417264182641926420264212642226423264242642526426264272642826429264302643126432264332643426435264362643726438264392644026441264422644326444264452644626447264482644926450264512645226453264542645526456264572645826459264602646126462264632646426465264662646726468264692647026471264722647326474264752647626477264782647926480264812648226483264842648526486264872648826489264902649126492264932649426495264962649726498264992650026501265022650326504265052650626507265082650926510265112651226513265142651526516265172651826519265202652126522265232652426525265262652726528265292653026531265322653326534265352653626537265382653926540265412654226543265442654526546265472654826549265502655126552265532655426555265562655726558265592656026561265622656326564265652656626567265682656926570265712657226573265742657526576265772657826579265802658126582
  1. function unityFramework(Module) {
  2. var Module = typeof Module !== "undefined" ? Module : {};
  3. ;
  4. var stackTraceReference = "(^|\\n)(\\s+at\\s+|)jsStackTrace(\\s+\\(|@)([^\\n]+):\\d+:\\d+(\\)|)(\\n|$)";
  5. var stackTraceReferenceMatch = jsStackTrace().match(new RegExp(stackTraceReference));
  6. if (stackTraceReferenceMatch) Module.stackTraceRegExp = new RegExp(stackTraceReference.replace("([^\\n]+)", stackTraceReferenceMatch[4].replace(/[\\^${}[\]().*+?|]/g, "\\$&")).replace("jsStackTrace", "[^\\n]+"));
  7. var abort = (function(what) {
  8. if (ABORT) return;
  9. ABORT = true;
  10. EXITSTATUS = 1;
  11. if (typeof ENVIRONMENT_IS_PTHREAD !== "undefined" && ENVIRONMENT_IS_PTHREAD) console.error("Pthread aborting at " + (new Error).stack);
  12. if (what !== undefined) {
  13. out(what);
  14. err(what);
  15. what = JSON.stringify(what);
  16. } else {
  17. what = "";
  18. }
  19. var message = "abort(" + what + ") at " + stackTrace();
  20. if (Module.abortHandler && Module.abortHandler(message)) return;
  21. throw message;
  22. });
  23. if (typeof ENVIRONMENT_IS_PTHREAD === "undefined" || !ENVIRONMENT_IS_PTHREAD) {
  24. Module["preRun"].push((function() {
  25. var unityFileSystemInit = Module["unityFileSystemInit"] || (function() {
  26. FS.mkdir("/idbfs");
  27. FS.mount(IDBFS, {}, "/idbfs");
  28. Module.addRunDependency("JS_FileSystem_Mount");
  29. FS.syncfs(true, (function(err) {
  30. if (err) console.log("IndexedDB is not available. Data will not persist in cache and PlayerPrefs will not be saved.");
  31. Module.removeRunDependency("JS_FileSystem_Mount");
  32. }));
  33. });
  34. unityFileSystemInit();
  35. }));
  36. }
  37. Module["SetFullscreen"] = (function(fullscreen) {
  38. if (typeof runtimeInitialized === "undefined" || !runtimeInitialized) {
  39. console.log("Runtime not initialized yet.");
  40. } else if (typeof JSEvents === "undefined") {
  41. console.log("Player not loaded yet.");
  42. } else {
  43. var tmp = JSEvents.canPerformEventHandlerRequests;
  44. JSEvents.canPerformEventHandlerRequests = (function() {
  45. return 1;
  46. });
  47. Module.ccall("SetFullscreen", null, [ "number" ], [ fullscreen ]);
  48. JSEvents.canPerformEventHandlerRequests = tmp;
  49. }
  50. });
  51. var MediaDevices = [];
  52. if (typeof ENVIRONMENT_IS_PTHREAD === "undefined" || !ENVIRONMENT_IS_PTHREAD) {
  53. Module["preRun"].push((function() {
  54. var enumerateMediaDevices = (function() {
  55. var getMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
  56. if (!getMedia) return;
  57. function addDevice(label) {
  58. label = label ? label : "device #" + MediaDevices.length;
  59. var device = {
  60. deviceName: label,
  61. refCount: 0,
  62. video: null
  63. };
  64. MediaDevices.push(device);
  65. }
  66. if (!navigator.mediaDevices || !navigator.mediaDevices.enumerateDevices) {
  67. if (typeof MediaStreamTrack == "undefined" || typeof MediaStreamTrack.getSources == "undefined") {
  68. console.log("Media Devices cannot be enumerated on this browser.");
  69. return;
  70. }
  71. function gotSources(sourceInfos) {
  72. for (var i = 0; i !== sourceInfos.length; ++i) {
  73. var sourceInfo = sourceInfos[i];
  74. if (sourceInfo.kind === "video") addDevice(sourceInfo.label);
  75. }
  76. }
  77. MediaStreamTrack.getSources(gotSources);
  78. }
  79. navigator.mediaDevices.enumerateDevices().then((function(devices) {
  80. devices.forEach((function(device) {
  81. if (device.kind == "videoinput") addDevice(device.label);
  82. }));
  83. })).catch((function(err) {
  84. console.log(err.name + ": " + error.message);
  85. }));
  86. });
  87. enumerateMediaDevices();
  88. }));
  89. }
  90. function SendMessage(gameObject, func, param) {
  91. 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.";
  92. }
  93. Module["SendMessage"] = SendMessage;
  94. var ___cxa_throw = (function() {
  95. var original___cxa_throw = ___cxa_throw;
  96. return (function() {
  97. console.log("Exception at: \n" + stackTrace());
  98. original___cxa_throw();
  99. });
  100. })();
  101. var moduleOverrides = {};
  102. var key;
  103. for (key in Module) {
  104. if (Module.hasOwnProperty(key)) {
  105. moduleOverrides[key] = Module[key];
  106. }
  107. }
  108. Module["arguments"] = [];
  109. Module["thisProgram"] = "./this.program";
  110. Module["quit"] = (function(status, toThrow) {
  111. throw toThrow;
  112. });
  113. Module["preRun"] = [];
  114. Module["postRun"] = [];
  115. var ENVIRONMENT_IS_WEB = false;
  116. var ENVIRONMENT_IS_WORKER = false;
  117. var ENVIRONMENT_IS_NODE = false;
  118. var ENVIRONMENT_IS_SHELL = false;
  119. ENVIRONMENT_IS_WEB = typeof window === "object";
  120. ENVIRONMENT_IS_WORKER = typeof importScripts === "function";
  121. ENVIRONMENT_IS_NODE = typeof process === "object" && typeof require === "function" && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER;
  122. ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER;
  123. if (Module["ENVIRONMENT"]) {
  124. 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)");
  125. }
  126. assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");
  127. assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");
  128. assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");
  129. assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead");
  130. var scriptDirectory = "";
  131. function locateFile(path) {
  132. if (Module["locateFile"]) {
  133. return Module["locateFile"](path, scriptDirectory);
  134. } else {
  135. return scriptDirectory + path;
  136. }
  137. }
  138. if (ENVIRONMENT_IS_NODE) {
  139. scriptDirectory = __dirname + "/";
  140. var nodeFS;
  141. var nodePath;
  142. Module["read"] = function shell_read(filename, binary) {
  143. var ret;
  144. if (!nodeFS) nodeFS = require("fs");
  145. if (!nodePath) nodePath = require("path");
  146. filename = nodePath["normalize"](filename);
  147. ret = nodeFS["readFileSync"](filename);
  148. return binary ? ret : ret.toString();
  149. };
  150. Module["readBinary"] = function readBinary(filename) {
  151. var ret = Module["read"](filename, true);
  152. if (!ret.buffer) {
  153. ret = new Uint8Array(ret);
  154. }
  155. assert(ret.buffer);
  156. return ret;
  157. };
  158. if (process["argv"].length > 1) {
  159. Module["thisProgram"] = process["argv"][1].replace(/\\/g, "/");
  160. }
  161. Module["arguments"] = process["argv"].slice(2);
  162. if (typeof module !== "undefined") {
  163. module["exports"] = Module;
  164. }
  165. process["on"]("uncaughtException", (function(ex) {
  166. if (!(ex instanceof ExitStatus)) {
  167. throw ex;
  168. }
  169. }));
  170. process["on"]("unhandledRejection", (function(reason, p) {
  171. err("node.js exiting due to unhandled promise rejection");
  172. process["exit"](1);
  173. }));
  174. Module["quit"] = (function(status) {
  175. process["exit"](status);
  176. });
  177. Module["inspect"] = (function() {
  178. return "[Emscripten Module object]";
  179. });
  180. } else if (ENVIRONMENT_IS_SHELL) {
  181. if (typeof read != "undefined") {
  182. Module["read"] = function shell_read(f) {
  183. return read(f);
  184. };
  185. }
  186. Module["readBinary"] = function readBinary(f) {
  187. var data;
  188. if (typeof readbuffer === "function") {
  189. return new Uint8Array(readbuffer(f));
  190. }
  191. data = read(f, "binary");
  192. assert(typeof data === "object");
  193. return data;
  194. };
  195. if (typeof scriptArgs != "undefined") {
  196. Module["arguments"] = scriptArgs;
  197. } else if (typeof arguments != "undefined") {
  198. Module["arguments"] = arguments;
  199. }
  200. if (typeof quit === "function") {
  201. Module["quit"] = (function(status) {
  202. quit(status);
  203. });
  204. }
  205. } else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
  206. if (ENVIRONMENT_IS_WEB) {
  207. if (document.currentScript) {
  208. scriptDirectory = document.currentScript.src;
  209. }
  210. } else {
  211. scriptDirectory = self.location.href;
  212. }
  213. if (scriptDirectory.indexOf("blob:") !== 0) {
  214. scriptDirectory = scriptDirectory.split("/").slice(0, -1).join("/") + "/";
  215. } else {
  216. scriptDirectory = "";
  217. }
  218. Module["read"] = function shell_read(url) {
  219. var xhr = new XMLHttpRequest;
  220. xhr.open("GET", url, false);
  221. xhr.send(null);
  222. return xhr.responseText;
  223. };
  224. if (ENVIRONMENT_IS_WORKER) {
  225. Module["readBinary"] = function readBinary(url) {
  226. var xhr = new XMLHttpRequest;
  227. xhr.open("GET", url, false);
  228. xhr.responseType = "arraybuffer";
  229. xhr.send(null);
  230. return new Uint8Array(xhr.response);
  231. };
  232. }
  233. Module["readAsync"] = function readAsync(url, onload, onerror) {
  234. var xhr = new XMLHttpRequest;
  235. xhr.open("GET", url, true);
  236. xhr.responseType = "arraybuffer";
  237. xhr.onload = function xhr_onload() {
  238. if (xhr.status == 200 || xhr.status == 0 && xhr.response) {
  239. onload(xhr.response);
  240. return;
  241. }
  242. onerror();
  243. };
  244. xhr.onerror = onerror;
  245. xhr.send(null);
  246. };
  247. Module["setWindowTitle"] = (function(title) {
  248. document.title = title;
  249. });
  250. } else {
  251. throw new Error("environment detection error");
  252. }
  253. var out = Module["print"] || (typeof console !== "undefined" ? console.log.bind(console) : typeof print !== "undefined" ? print : null);
  254. var err = Module["printErr"] || (typeof printErr !== "undefined" ? printErr : typeof console !== "undefined" && console.warn.bind(console) || out);
  255. for (key in moduleOverrides) {
  256. if (moduleOverrides.hasOwnProperty(key)) {
  257. Module[key] = moduleOverrides[key];
  258. }
  259. }
  260. moduleOverrides = undefined;
  261. var STACK_ALIGN = 16;
  262. stackSave = stackRestore = stackAlloc = setTempRet0 = getTempRet0 = (function() {
  263. abort("cannot use the stack before compiled code is ready to run, and has provided stack access");
  264. });
  265. function staticAlloc(size) {
  266. assert(!staticSealed);
  267. var ret = STATICTOP;
  268. STATICTOP = STATICTOP + size + 15 & -16;
  269. assert(STATICTOP < TOTAL_MEMORY, "not enough memory for static allocation - increase TOTAL_MEMORY");
  270. return ret;
  271. }
  272. function dynamicAlloc(size) {
  273. assert(DYNAMICTOP_PTR);
  274. var ret = HEAP32[DYNAMICTOP_PTR >> 2];
  275. var end = ret + size + 15 & -16;
  276. HEAP32[DYNAMICTOP_PTR >> 2] = end;
  277. if (end >= TOTAL_MEMORY) {
  278. var success = enlargeMemory();
  279. if (!success) {
  280. HEAP32[DYNAMICTOP_PTR >> 2] = ret;
  281. return 0;
  282. }
  283. }
  284. return ret;
  285. }
  286. function alignMemory(size, factor) {
  287. if (!factor) factor = STACK_ALIGN;
  288. var ret = size = Math.ceil(size / factor) * factor;
  289. return ret;
  290. }
  291. function getNativeTypeSize(type) {
  292. switch (type) {
  293. case "i1":
  294. case "i8":
  295. return 1;
  296. case "i16":
  297. return 2;
  298. case "i32":
  299. return 4;
  300. case "i64":
  301. return 8;
  302. case "float":
  303. return 4;
  304. case "double":
  305. return 8;
  306. default:
  307. {
  308. if (type[type.length - 1] === "*") {
  309. return 4;
  310. } else if (type[0] === "i") {
  311. var bits = parseInt(type.substr(1));
  312. assert(bits % 8 === 0);
  313. return bits / 8;
  314. } else {
  315. return 0;
  316. }
  317. }
  318. }
  319. }
  320. function warnOnce(text) {
  321. if (!warnOnce.shown) warnOnce.shown = {};
  322. if (!warnOnce.shown[text]) {
  323. warnOnce.shown[text] = 1;
  324. err(text);
  325. }
  326. }
  327. var asm2wasmImports = {
  328. "f64-rem": (function(x, y) {
  329. return x % y;
  330. }),
  331. "debugger": (function() {
  332. debugger;
  333. })
  334. };
  335. var jsCallStartIndex = 1;
  336. var functionPointers = new Array(0);
  337. function addFunction(func, sig) {
  338. if (typeof sig === "undefined") {
  339. 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.");
  340. }
  341. var base = 0;
  342. for (var i = base; i < base + 0; i++) {
  343. if (!functionPointers[i]) {
  344. functionPointers[i] = func;
  345. return jsCallStartIndex + i;
  346. }
  347. }
  348. throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.";
  349. }
  350. var funcWrappers = {};
  351. function getFuncWrapper(func, sig) {
  352. if (!func) return;
  353. assert(sig);
  354. if (!funcWrappers[sig]) {
  355. funcWrappers[sig] = {};
  356. }
  357. var sigCache = funcWrappers[sig];
  358. if (!sigCache[func]) {
  359. if (sig.length === 1) {
  360. sigCache[func] = function dynCall_wrapper() {
  361. return dynCall(sig, func);
  362. };
  363. } else if (sig.length === 2) {
  364. sigCache[func] = function dynCall_wrapper(arg) {
  365. return dynCall(sig, func, [ arg ]);
  366. };
  367. } else {
  368. sigCache[func] = function dynCall_wrapper() {
  369. return dynCall(sig, func, Array.prototype.slice.call(arguments));
  370. };
  371. }
  372. }
  373. return sigCache[func];
  374. }
  375. function makeBigInt(low, high, unsigned) {
  376. return unsigned ? +(low >>> 0) + +(high >>> 0) * 4294967296 : +(low >>> 0) + +(high | 0) * 4294967296;
  377. }
  378. function dynCall(sig, ptr, args) {
  379. if (args && args.length) {
  380. assert(args.length == sig.length - 1);
  381. assert("dynCall_" + sig in Module, "bad function pointer type - no table for sig '" + sig + "'");
  382. return Module["dynCall_" + sig].apply(null, [ ptr ].concat(args));
  383. } else {
  384. assert(sig.length == 1);
  385. assert("dynCall_" + sig in Module, "bad function pointer type - no table for sig '" + sig + "'");
  386. return Module["dynCall_" + sig].call(null, ptr);
  387. }
  388. }
  389. var GLOBAL_BASE = 1024;
  390. var ABORT = 0;
  391. var EXITSTATUS = 0;
  392. function assert(condition, text) {
  393. if (!condition) {
  394. abort("Assertion failed: " + text);
  395. }
  396. }
  397. function getCFunc(ident) {
  398. var func = Module["_" + ident];
  399. assert(func, "Cannot call unknown function " + ident + ", make sure it is exported");
  400. return func;
  401. }
  402. var JSfuncs = {
  403. "stackSave": (function() {
  404. stackSave();
  405. }),
  406. "stackRestore": (function() {
  407. stackRestore();
  408. }),
  409. "arrayToC": (function(arr) {
  410. var ret = stackAlloc(arr.length);
  411. writeArrayToMemory(arr, ret);
  412. return ret;
  413. }),
  414. "stringToC": (function(str) {
  415. var ret = 0;
  416. if (str !== null && str !== undefined && str !== 0) {
  417. var len = (str.length << 2) + 1;
  418. ret = stackAlloc(len);
  419. stringToUTF8(str, ret, len);
  420. }
  421. return ret;
  422. })
  423. };
  424. var toC = {
  425. "string": JSfuncs["stringToC"],
  426. "array": JSfuncs["arrayToC"]
  427. };
  428. function ccall(ident, returnType, argTypes, args, opts) {
  429. function convertReturnValue(ret) {
  430. if (returnType === "string") return Pointer_stringify(ret);
  431. if (returnType === "boolean") return Boolean(ret);
  432. return ret;
  433. }
  434. var func = getCFunc(ident);
  435. var cArgs = [];
  436. var stack = 0;
  437. assert(returnType !== "array", 'Return type should not be "array".');
  438. if (args) {
  439. for (var i = 0; i < args.length; i++) {
  440. var converter = toC[argTypes[i]];
  441. if (converter) {
  442. if (stack === 0) stack = stackSave();
  443. cArgs[i] = converter(args[i]);
  444. } else {
  445. cArgs[i] = args[i];
  446. }
  447. }
  448. }
  449. var ret = func.apply(null, cArgs);
  450. ret = convertReturnValue(ret);
  451. if (stack !== 0) stackRestore(stack);
  452. return ret;
  453. }
  454. function cwrap(ident, returnType, argTypes, opts) {
  455. return (function() {
  456. return ccall(ident, returnType, argTypes, arguments, opts);
  457. });
  458. }
  459. function setValue(ptr, value, type, noSafe) {
  460. type = type || "i8";
  461. if (type.charAt(type.length - 1) === "*") type = "i32";
  462. switch (type) {
  463. case "i1":
  464. HEAP8[ptr >> 0] = value;
  465. break;
  466. case "i8":
  467. HEAP8[ptr >> 0] = value;
  468. break;
  469. case "i16":
  470. HEAP16[ptr >> 1] = value;
  471. break;
  472. case "i32":
  473. HEAP32[ptr >> 2] = value;
  474. break;
  475. case "i64":
  476. 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];
  477. break;
  478. case "float":
  479. HEAPF32[ptr >> 2] = value;
  480. break;
  481. case "double":
  482. HEAPF64[ptr >> 3] = value;
  483. break;
  484. default:
  485. abort("invalid type for setValue: " + type);
  486. }
  487. }
  488. var ALLOC_NORMAL = 0;
  489. var ALLOC_STACK = 1;
  490. var ALLOC_STATIC = 2;
  491. var ALLOC_NONE = 4;
  492. function allocate(slab, types, allocator, ptr) {
  493. var zeroinit, size;
  494. if (typeof slab === "number") {
  495. zeroinit = true;
  496. size = slab;
  497. } else {
  498. zeroinit = false;
  499. size = slab.length;
  500. }
  501. var singleType = typeof types === "string" ? types : null;
  502. var ret;
  503. if (allocator == ALLOC_NONE) {
  504. ret = ptr;
  505. } else {
  506. ret = [ typeof _malloc === "function" ? _malloc : staticAlloc, stackAlloc, staticAlloc, dynamicAlloc ][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length));
  507. }
  508. if (zeroinit) {
  509. var stop;
  510. ptr = ret;
  511. assert((ret & 3) == 0);
  512. stop = ret + (size & ~3);
  513. for (; ptr < stop; ptr += 4) {
  514. HEAP32[ptr >> 2] = 0;
  515. }
  516. stop = ret + size;
  517. while (ptr < stop) {
  518. HEAP8[ptr++ >> 0] = 0;
  519. }
  520. return ret;
  521. }
  522. if (singleType === "i8") {
  523. if (slab.subarray || slab.slice) {
  524. HEAPU8.set(slab, ret);
  525. } else {
  526. HEAPU8.set(new Uint8Array(slab), ret);
  527. }
  528. return ret;
  529. }
  530. var i = 0, type, typeSize, previousType;
  531. while (i < size) {
  532. var curr = slab[i];
  533. type = singleType || types[i];
  534. if (type === 0) {
  535. i++;
  536. continue;
  537. }
  538. assert(type, "Must know what type to store in allocate!");
  539. if (type == "i64") type = "i32";
  540. setValue(ret + i, curr, type);
  541. if (previousType !== type) {
  542. typeSize = getNativeTypeSize(type);
  543. previousType = type;
  544. }
  545. i += typeSize;
  546. }
  547. return ret;
  548. }
  549. function getMemory(size) {
  550. if (!staticSealed) return staticAlloc(size);
  551. if (!runtimeInitialized) return dynamicAlloc(size);
  552. return _malloc(size);
  553. }
  554. function Pointer_stringify(ptr, length) {
  555. if (length === 0 || !ptr) return "";
  556. var hasUtf = 0;
  557. var t;
  558. var i = 0;
  559. while (1) {
  560. assert(ptr + i < TOTAL_MEMORY);
  561. t = HEAPU8[ptr + i >> 0];
  562. hasUtf |= t;
  563. if (t == 0 && !length) break;
  564. i++;
  565. if (length && i == length) break;
  566. }
  567. if (!length) length = i;
  568. var ret = "";
  569. if (hasUtf < 128) {
  570. var MAX_CHUNK = 1024;
  571. var curr;
  572. while (length > 0) {
  573. curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK)));
  574. ret = ret ? ret + curr : curr;
  575. ptr += MAX_CHUNK;
  576. length -= MAX_CHUNK;
  577. }
  578. return ret;
  579. }
  580. return UTF8ToString(ptr);
  581. }
  582. var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined;
  583. function UTF8ArrayToString(u8Array, idx) {
  584. var endPtr = idx;
  585. while (u8Array[endPtr]) ++endPtr;
  586. if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) {
  587. return UTF8Decoder.decode(u8Array.subarray(idx, endPtr));
  588. } else {
  589. var u0, u1, u2, u3, u4, u5;
  590. var str = "";
  591. while (1) {
  592. u0 = u8Array[idx++];
  593. if (!u0) return str;
  594. if (!(u0 & 128)) {
  595. str += String.fromCharCode(u0);
  596. continue;
  597. }
  598. u1 = u8Array[idx++] & 63;
  599. if ((u0 & 224) == 192) {
  600. str += String.fromCharCode((u0 & 31) << 6 | u1);
  601. continue;
  602. }
  603. u2 = u8Array[idx++] & 63;
  604. if ((u0 & 240) == 224) {
  605. u0 = (u0 & 15) << 12 | u1 << 6 | u2;
  606. } else {
  607. u3 = u8Array[idx++] & 63;
  608. if ((u0 & 248) == 240) {
  609. u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u3;
  610. } else {
  611. u4 = u8Array[idx++] & 63;
  612. if ((u0 & 252) == 248) {
  613. u0 = (u0 & 3) << 24 | u1 << 18 | u2 << 12 | u3 << 6 | u4;
  614. } else {
  615. u5 = u8Array[idx++] & 63;
  616. u0 = (u0 & 1) << 30 | u1 << 24 | u2 << 18 | u3 << 12 | u4 << 6 | u5;
  617. }
  618. }
  619. }
  620. if (u0 < 65536) {
  621. str += String.fromCharCode(u0);
  622. } else {
  623. var ch = u0 - 65536;
  624. str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
  625. }
  626. }
  627. }
  628. }
  629. function UTF8ToString(ptr) {
  630. return UTF8ArrayToString(HEAPU8, ptr);
  631. }
  632. function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) {
  633. if (!(maxBytesToWrite > 0)) return 0;
  634. var startIdx = outIdx;
  635. var endIdx = outIdx + maxBytesToWrite - 1;
  636. for (var i = 0; i < str.length; ++i) {
  637. var u = str.charCodeAt(i);
  638. if (u >= 55296 && u <= 57343) {
  639. var u1 = str.charCodeAt(++i);
  640. u = 65536 + ((u & 1023) << 10) | u1 & 1023;
  641. }
  642. if (u <= 127) {
  643. if (outIdx >= endIdx) break;
  644. outU8Array[outIdx++] = u;
  645. } else if (u <= 2047) {
  646. if (outIdx + 1 >= endIdx) break;
  647. outU8Array[outIdx++] = 192 | u >> 6;
  648. outU8Array[outIdx++] = 128 | u & 63;
  649. } else if (u <= 65535) {
  650. if (outIdx + 2 >= endIdx) break;
  651. outU8Array[outIdx++] = 224 | u >> 12;
  652. outU8Array[outIdx++] = 128 | u >> 6 & 63;
  653. outU8Array[outIdx++] = 128 | u & 63;
  654. } else if (u <= 2097151) {
  655. if (outIdx + 3 >= endIdx) break;
  656. outU8Array[outIdx++] = 240 | u >> 18;
  657. outU8Array[outIdx++] = 128 | u >> 12 & 63;
  658. outU8Array[outIdx++] = 128 | u >> 6 & 63;
  659. outU8Array[outIdx++] = 128 | u & 63;
  660. } else if (u <= 67108863) {
  661. if (outIdx + 4 >= endIdx) break;
  662. outU8Array[outIdx++] = 248 | u >> 24;
  663. outU8Array[outIdx++] = 128 | u >> 18 & 63;
  664. outU8Array[outIdx++] = 128 | u >> 12 & 63;
  665. outU8Array[outIdx++] = 128 | u >> 6 & 63;
  666. outU8Array[outIdx++] = 128 | u & 63;
  667. } else {
  668. if (outIdx + 5 >= endIdx) break;
  669. outU8Array[outIdx++] = 252 | u >> 30;
  670. outU8Array[outIdx++] = 128 | u >> 24 & 63;
  671. outU8Array[outIdx++] = 128 | u >> 18 & 63;
  672. outU8Array[outIdx++] = 128 | u >> 12 & 63;
  673. outU8Array[outIdx++] = 128 | u >> 6 & 63;
  674. outU8Array[outIdx++] = 128 | u & 63;
  675. }
  676. }
  677. outU8Array[outIdx] = 0;
  678. return outIdx - startIdx;
  679. }
  680. function stringToUTF8(str, outPtr, maxBytesToWrite) {
  681. assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");
  682. return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
  683. }
  684. function lengthBytesUTF8(str) {
  685. var len = 0;
  686. for (var i = 0; i < str.length; ++i) {
  687. var u = str.charCodeAt(i);
  688. if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023;
  689. if (u <= 127) {
  690. ++len;
  691. } else if (u <= 2047) {
  692. len += 2;
  693. } else if (u <= 65535) {
  694. len += 3;
  695. } else if (u <= 2097151) {
  696. len += 4;
  697. } else if (u <= 67108863) {
  698. len += 5;
  699. } else {
  700. len += 6;
  701. }
  702. }
  703. return len;
  704. }
  705. var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined;
  706. function allocateUTF8(str) {
  707. var size = lengthBytesUTF8(str) + 1;
  708. var ret = _malloc(size);
  709. if (ret) stringToUTF8Array(str, HEAP8, ret, size);
  710. return ret;
  711. }
  712. function allocateUTF8OnStack(str) {
  713. var size = lengthBytesUTF8(str) + 1;
  714. var ret = stackAlloc(size);
  715. stringToUTF8Array(str, HEAP8, ret, size);
  716. return ret;
  717. }
  718. function demangle(func) {
  719. var __cxa_demangle_func = Module["___cxa_demangle"] || Module["__cxa_demangle"];
  720. assert(__cxa_demangle_func);
  721. try {
  722. var s = func.substr(1);
  723. var len = lengthBytesUTF8(s) + 1;
  724. var buf = _malloc(len);
  725. stringToUTF8(s, buf, len);
  726. var status = _malloc(4);
  727. var ret = __cxa_demangle_func(buf, 0, 0, status);
  728. if (HEAP32[status >> 2] === 0 && ret) {
  729. return Pointer_stringify(ret);
  730. }
  731. } catch (e) {} finally {
  732. if (buf) _free(buf);
  733. if (status) _free(status);
  734. if (ret) _free(ret);
  735. }
  736. return func;
  737. }
  738. function demangleAll(text) {
  739. var regex = /__Z[\w\d_]+/g;
  740. return text.replace(regex, (function(x) {
  741. var y = demangle(x);
  742. return x === y ? x : x + " [" + y + "]";
  743. }));
  744. }
  745. function jsStackTrace() {
  746. var err = new Error;
  747. if (!err.stack) {
  748. try {
  749. throw new Error(0);
  750. } catch (e) {
  751. err = e;
  752. }
  753. if (!err.stack) {
  754. return "(no stack trace available)";
  755. }
  756. }
  757. return err.stack.toString();
  758. }
  759. function stackTrace() {
  760. var js = jsStackTrace();
  761. if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"]();
  762. return demangleAll(js);
  763. }
  764. var PAGE_SIZE = 16384;
  765. var WASM_PAGE_SIZE = 65536;
  766. var ASMJS_PAGE_SIZE = 16777216;
  767. var MIN_TOTAL_MEMORY = 16777216;
  768. function alignUp(x, multiple) {
  769. if (x % multiple > 0) {
  770. x += multiple - x % multiple;
  771. }
  772. return x;
  773. }
  774. var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
  775. function updateGlobalBuffer(buf) {
  776. Module["buffer"] = buffer = buf;
  777. }
  778. function updateGlobalBufferViews() {
  779. Module["HEAP8"] = HEAP8 = new Int8Array(buffer);
  780. Module["HEAP16"] = HEAP16 = new Int16Array(buffer);
  781. Module["HEAP32"] = HEAP32 = new Int32Array(buffer);
  782. Module["HEAPU8"] = HEAPU8 = new Uint8Array(buffer);
  783. Module["HEAPU16"] = HEAPU16 = new Uint16Array(buffer);
  784. Module["HEAPU32"] = HEAPU32 = new Uint32Array(buffer);
  785. Module["HEAPF32"] = HEAPF32 = new Float32Array(buffer);
  786. Module["HEAPF64"] = HEAPF64 = new Float64Array(buffer);
  787. }
  788. var STATIC_BASE, STATICTOP, staticSealed;
  789. var STACK_BASE, STACKTOP, STACK_MAX;
  790. var DYNAMIC_BASE, DYNAMICTOP_PTR;
  791. STATIC_BASE = STATICTOP = STACK_BASE = STACKTOP = STACK_MAX = DYNAMIC_BASE = DYNAMICTOP_PTR = 0;
  792. staticSealed = false;
  793. function writeStackCookie() {
  794. assert((STACK_MAX & 3) == 0);
  795. HEAPU32[(STACK_MAX >> 2) - 1] = 34821223;
  796. HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022;
  797. }
  798. function checkStackCookie() {
  799. if (HEAPU32[(STACK_MAX >> 2) - 1] != 34821223 || HEAPU32[(STACK_MAX >> 2) - 2] != 2310721022) {
  800. 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));
  801. }
  802. if (HEAP32[0] !== 1668509029) throw "Runtime error: The application has corrupted its heap memory area (address zero)!";
  803. }
  804. function abortStackOverflow(allocSize) {
  805. abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!");
  806. }
  807. function abortOnCannotGrowMemory() {
  808. 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 ");
  809. }
  810. if (!Module["reallocBuffer"]) Module["reallocBuffer"] = (function(size) {
  811. var ret;
  812. try {
  813. if (ArrayBuffer.transfer) {
  814. ret = ArrayBuffer.transfer(buffer, size);
  815. } else {
  816. var oldHEAP8 = HEAP8;
  817. ret = new ArrayBuffer(size);
  818. var temp = new Int8Array(ret);
  819. temp.set(oldHEAP8);
  820. }
  821. } catch (e) {
  822. return false;
  823. }
  824. var success = _emscripten_replace_memory(ret);
  825. if (!success) return false;
  826. return ret;
  827. });
  828. function enlargeMemory() {
  829. assert(HEAP32[DYNAMICTOP_PTR >> 2] > TOTAL_MEMORY);
  830. var PAGE_MULTIPLE = Module["usingWasm"] ? WASM_PAGE_SIZE : ASMJS_PAGE_SIZE;
  831. var LIMIT = 2147483648 - PAGE_MULTIPLE;
  832. if (HEAP32[DYNAMICTOP_PTR >> 2] > LIMIT) {
  833. err("Cannot enlarge memory, asked to go up to " + HEAP32[DYNAMICTOP_PTR >> 2] + " bytes, but the limit is " + LIMIT + " bytes!");
  834. return false;
  835. }
  836. var OLD_TOTAL_MEMORY = TOTAL_MEMORY;
  837. TOTAL_MEMORY = Math.max(TOTAL_MEMORY, MIN_TOTAL_MEMORY);
  838. while (TOTAL_MEMORY < HEAP32[DYNAMICTOP_PTR >> 2]) {
  839. if (TOTAL_MEMORY <= 536870912) {
  840. TOTAL_MEMORY = alignUp(2 * TOTAL_MEMORY, PAGE_MULTIPLE);
  841. } else {
  842. TOTAL_MEMORY = Math.min(alignUp((3 * TOTAL_MEMORY + 2147483648) / 4, PAGE_MULTIPLE), LIMIT);
  843. if (TOTAL_MEMORY === OLD_TOTAL_MEMORY) {
  844. 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);
  845. }
  846. }
  847. }
  848. var start = Date.now();
  849. var replacement = Module["reallocBuffer"](TOTAL_MEMORY);
  850. if (!replacement || replacement.byteLength != TOTAL_MEMORY) {
  851. err("Failed to grow the heap from " + OLD_TOTAL_MEMORY + " bytes to " + TOTAL_MEMORY + " bytes, not enough memory!");
  852. if (replacement) {
  853. err("Expected to get back a buffer of size " + TOTAL_MEMORY + " bytes, but instead got back a buffer of size " + replacement.byteLength);
  854. }
  855. TOTAL_MEMORY = OLD_TOTAL_MEMORY;
  856. return false;
  857. }
  858. updateGlobalBuffer(replacement);
  859. updateGlobalBufferViews();
  860. if (!Module["usingWasm"]) {
  861. err("Warning: Enlarging memory arrays, this is not fast! " + [ OLD_TOTAL_MEMORY, TOTAL_MEMORY ]);
  862. }
  863. return true;
  864. }
  865. var byteLength;
  866. try {
  867. byteLength = Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "byteLength").get);
  868. byteLength(new ArrayBuffer(4));
  869. } catch (e) {
  870. byteLength = (function(buffer) {
  871. return buffer.byteLength;
  872. });
  873. }
  874. var TOTAL_STACK = Module["TOTAL_STACK"] || 5242880;
  875. var TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 33554432;
  876. if (TOTAL_MEMORY < TOTAL_STACK) err("TOTAL_MEMORY should be larger than TOTAL_STACK, was " + TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")");
  877. assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support");
  878. if (Module["buffer"]) {
  879. buffer = Module["buffer"];
  880. assert(buffer.byteLength === TOTAL_MEMORY, "provided buffer should be " + TOTAL_MEMORY + " bytes, but it is " + buffer.byteLength);
  881. } else {
  882. if (typeof WebAssembly === "object" && typeof WebAssembly.Memory === "function") {
  883. assert(TOTAL_MEMORY % WASM_PAGE_SIZE === 0);
  884. Module["wasmMemory"] = new WebAssembly.Memory({
  885. "initial": TOTAL_MEMORY / WASM_PAGE_SIZE
  886. });
  887. buffer = Module["wasmMemory"].buffer;
  888. } else {
  889. buffer = new ArrayBuffer(TOTAL_MEMORY);
  890. }
  891. assert(buffer.byteLength === TOTAL_MEMORY);
  892. Module["buffer"] = buffer;
  893. }
  894. updateGlobalBufferViews();
  895. function getTotalMemory() {
  896. return TOTAL_MEMORY;
  897. }
  898. HEAP32[0] = 1668509029;
  899. HEAP16[1] = 25459;
  900. if (HEAPU8[2] !== 115 || HEAPU8[3] !== 99) throw "Runtime error: expected the system to be little-endian!";
  901. function callRuntimeCallbacks(callbacks) {
  902. while (callbacks.length > 0) {
  903. var callback = callbacks.shift();
  904. if (typeof callback == "function") {
  905. callback();
  906. continue;
  907. }
  908. var func = callback.func;
  909. if (typeof func === "number") {
  910. if (callback.arg === undefined) {
  911. Module["dynCall_v"](func);
  912. } else {
  913. Module["dynCall_vi"](func, callback.arg);
  914. }
  915. } else {
  916. func(callback.arg === undefined ? null : callback.arg);
  917. }
  918. }
  919. }
  920. var __ATPRERUN__ = [];
  921. var __ATINIT__ = [];
  922. var __ATMAIN__ = [];
  923. var __ATEXIT__ = [];
  924. var __ATPOSTRUN__ = [];
  925. var runtimeInitialized = false;
  926. var runtimeExited = false;
  927. function preRun() {
  928. if (Module["preRun"]) {
  929. if (typeof Module["preRun"] == "function") Module["preRun"] = [ Module["preRun"] ];
  930. while (Module["preRun"].length) {
  931. addOnPreRun(Module["preRun"].shift());
  932. }
  933. }
  934. callRuntimeCallbacks(__ATPRERUN__);
  935. }
  936. function ensureInitRuntime() {
  937. checkStackCookie();
  938. if (runtimeInitialized) return;
  939. runtimeInitialized = true;
  940. callRuntimeCallbacks(__ATINIT__);
  941. }
  942. function preMain() {
  943. checkStackCookie();
  944. callRuntimeCallbacks(__ATMAIN__);
  945. }
  946. function exitRuntime() {
  947. checkStackCookie();
  948. callRuntimeCallbacks(__ATEXIT__);
  949. runtimeExited = true;
  950. }
  951. function postRun() {
  952. checkStackCookie();
  953. if (Module["postRun"]) {
  954. if (typeof Module["postRun"] == "function") Module["postRun"] = [ Module["postRun"] ];
  955. while (Module["postRun"].length) {
  956. addOnPostRun(Module["postRun"].shift());
  957. }
  958. }
  959. callRuntimeCallbacks(__ATPOSTRUN__);
  960. }
  961. function addOnPreRun(cb) {
  962. __ATPRERUN__.unshift(cb);
  963. }
  964. function addOnPostRun(cb) {
  965. __ATPOSTRUN__.unshift(cb);
  966. }
  967. function writeArrayToMemory(array, buffer) {
  968. assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)");
  969. HEAP8.set(array, buffer);
  970. }
  971. function writeAsciiToMemory(str, buffer, dontAddNull) {
  972. for (var i = 0; i < str.length; ++i) {
  973. assert(str.charCodeAt(i) === str.charCodeAt(i) & 255);
  974. HEAP8[buffer++ >> 0] = str.charCodeAt(i);
  975. }
  976. if (!dontAddNull) HEAP8[buffer >> 0] = 0;
  977. }
  978. function unSign(value, bits, ignore) {
  979. if (value >= 0) {
  980. return value;
  981. }
  982. return bits <= 32 ? 2 * Math.abs(1 << bits - 1) + value : Math.pow(2, bits) + value;
  983. }
  984. function reSign(value, bits, ignore) {
  985. if (value <= 0) {
  986. return value;
  987. }
  988. var half = bits <= 32 ? Math.abs(1 << bits - 1) : Math.pow(2, bits - 1);
  989. if (value >= half && (bits <= 32 || value > half)) {
  990. value = -2 * half + value;
  991. }
  992. return value;
  993. }
  994. assert(Math["imul"] && Math["fround"] && Math["clz32"] && Math["trunc"], "this is a legacy browser, build with LEGACY_VM_SUPPORT");
  995. var Math_abs = Math.abs;
  996. var Math_sqrt = Math.sqrt;
  997. var Math_ceil = Math.ceil;
  998. var Math_floor = Math.floor;
  999. var Math_pow = Math.pow;
  1000. var Math_min = Math.min;
  1001. var Math_clz32 = Math.clz32;
  1002. var Math_trunc = Math.trunc;
  1003. var runDependencies = 0;
  1004. var runDependencyWatcher = null;
  1005. var dependenciesFulfilled = null;
  1006. var runDependencyTracking = {};
  1007. function getUniqueRunDependency(id) {
  1008. var orig = id;
  1009. while (1) {
  1010. if (!runDependencyTracking[id]) return id;
  1011. id = orig + Math.random();
  1012. }
  1013. return id;
  1014. }
  1015. function addRunDependency(id) {
  1016. runDependencies++;
  1017. if (Module["monitorRunDependencies"]) {
  1018. Module["monitorRunDependencies"](runDependencies);
  1019. }
  1020. if (id) {
  1021. assert(!runDependencyTracking[id]);
  1022. runDependencyTracking[id] = 1;
  1023. if (runDependencyWatcher === null && typeof setInterval !== "undefined") {
  1024. runDependencyWatcher = setInterval((function() {
  1025. if (ABORT) {
  1026. clearInterval(runDependencyWatcher);
  1027. runDependencyWatcher = null;
  1028. return;
  1029. }
  1030. var shown = false;
  1031. for (var dep in runDependencyTracking) {
  1032. if (!shown) {
  1033. shown = true;
  1034. err("still waiting on run dependencies:");
  1035. }
  1036. err("dependency: " + dep);
  1037. }
  1038. if (shown) {
  1039. err("(end of list)");
  1040. }
  1041. }), 1e4);
  1042. }
  1043. } else {
  1044. err("warning: run dependency added without ID");
  1045. }
  1046. }
  1047. function removeRunDependency(id) {
  1048. runDependencies--;
  1049. if (Module["monitorRunDependencies"]) {
  1050. Module["monitorRunDependencies"](runDependencies);
  1051. }
  1052. if (id) {
  1053. assert(runDependencyTracking[id]);
  1054. delete runDependencyTracking[id];
  1055. } else {
  1056. err("warning: run dependency removed without ID");
  1057. }
  1058. if (runDependencies == 0) {
  1059. if (runDependencyWatcher !== null) {
  1060. clearInterval(runDependencyWatcher);
  1061. runDependencyWatcher = null;
  1062. }
  1063. if (dependenciesFulfilled) {
  1064. var callback = dependenciesFulfilled;
  1065. dependenciesFulfilled = null;
  1066. callback();
  1067. }
  1068. }
  1069. }
  1070. Module["preloadedImages"] = {};
  1071. Module["preloadedAudios"] = {};
  1072. var dataURIPrefix = "data:application/octet-stream;base64,";
  1073. function isDataURI(filename) {
  1074. return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0;
  1075. }
  1076. function integrateWasmJS() {
  1077. var wasmTextFile = "build.wast";
  1078. var wasmBinaryFile = "build.wasm";
  1079. var asmjsCodeFile = "build.temp.asm.js";
  1080. if (!isDataURI(wasmTextFile)) {
  1081. wasmTextFile = locateFile(wasmTextFile);
  1082. }
  1083. if (!isDataURI(wasmBinaryFile)) {
  1084. wasmBinaryFile = locateFile(wasmBinaryFile);
  1085. }
  1086. if (!isDataURI(asmjsCodeFile)) {
  1087. asmjsCodeFile = locateFile(asmjsCodeFile);
  1088. }
  1089. var wasmPageSize = 64 * 1024;
  1090. var info = {
  1091. "global": null,
  1092. "env": null,
  1093. "asm2wasm": asm2wasmImports,
  1094. "parent": Module
  1095. };
  1096. var exports = null;
  1097. function mergeMemory(newBuffer) {
  1098. var oldBuffer = Module["buffer"];
  1099. if (newBuffer.byteLength < oldBuffer.byteLength) {
  1100. err("the new buffer in mergeMemory is smaller than the previous one. in native wasm, we should grow memory here");
  1101. }
  1102. var oldView = new Int8Array(oldBuffer);
  1103. var newView = new Int8Array(newBuffer);
  1104. newView.set(oldView);
  1105. updateGlobalBuffer(newBuffer);
  1106. updateGlobalBufferViews();
  1107. }
  1108. function fixImports(imports) {
  1109. return imports;
  1110. }
  1111. function getBinary() {
  1112. try {
  1113. if (Module["wasmBinary"]) {
  1114. return new Uint8Array(Module["wasmBinary"]);
  1115. }
  1116. if (Module["readBinary"]) {
  1117. return Module["readBinary"](wasmBinaryFile);
  1118. } else {
  1119. throw "both async and sync fetching of the wasm failed";
  1120. }
  1121. } catch (err) {
  1122. abort(err);
  1123. }
  1124. }
  1125. function getBinaryPromise() {
  1126. if (!Module["wasmBinary"] && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") {
  1127. return fetch(wasmBinaryFile, {
  1128. credentials: "same-origin"
  1129. }).then((function(response) {
  1130. if (!response["ok"]) {
  1131. throw "failed to load wasm binary file at '" + wasmBinaryFile + "'";
  1132. }
  1133. return response["arrayBuffer"]();
  1134. })).catch((function() {
  1135. return getBinary();
  1136. }));
  1137. }
  1138. return new Promise((function(resolve, reject) {
  1139. resolve(getBinary());
  1140. }));
  1141. }
  1142. function doNativeWasm(global, env, providedBuffer) {
  1143. if (typeof WebAssembly !== "object") {
  1144. abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.");
  1145. err("no native wasm support detected");
  1146. return false;
  1147. }
  1148. if (!(Module["wasmMemory"] instanceof WebAssembly.Memory)) {
  1149. err("no native wasm Memory in use");
  1150. return false;
  1151. }
  1152. env["memory"] = Module["wasmMemory"];
  1153. info["global"] = {
  1154. "NaN": NaN,
  1155. "Infinity": Infinity
  1156. };
  1157. info["global.Math"] = Math;
  1158. info["env"] = env;
  1159. function receiveInstance(instance, module) {
  1160. exports = instance.exports;
  1161. if (exports.memory) mergeMemory(exports.memory);
  1162. Module["asm"] = exports;
  1163. Module["usingWasm"] = true;
  1164. removeRunDependency("wasm-instantiate");
  1165. }
  1166. addRunDependency("wasm-instantiate");
  1167. if (Module["instantiateWasm"]) {
  1168. try {
  1169. return Module["instantiateWasm"](info, receiveInstance);
  1170. } catch (e) {
  1171. err("Module.instantiateWasm callback failed with error: " + e);
  1172. return false;
  1173. }
  1174. }
  1175. var trueModule = Module;
  1176. function receiveInstantiatedSource(output) {
  1177. assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");
  1178. trueModule = null;
  1179. receiveInstance(output["instance"], output["module"]);
  1180. }
  1181. function instantiateArrayBuffer(receiver) {
  1182. getBinaryPromise().then((function(binary) {
  1183. return WebAssembly.instantiate(binary, info);
  1184. })).then(receiver).catch((function(reason) {
  1185. err("failed to asynchronously prepare wasm: " + reason);
  1186. abort(reason);
  1187. }));
  1188. }
  1189. if (!Module["wasmBinary"] && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") {
  1190. WebAssembly.instantiateStreaming(fetch(wasmBinaryFile, {
  1191. credentials: "same-origin"
  1192. }), info).then(receiveInstantiatedSource).catch((function(reason) {
  1193. err("wasm streaming compile failed: " + reason);
  1194. err("falling back to ArrayBuffer instantiation");
  1195. instantiateArrayBuffer(receiveInstantiatedSource);
  1196. }));
  1197. } else {
  1198. instantiateArrayBuffer(receiveInstantiatedSource);
  1199. }
  1200. return {};
  1201. }
  1202. Module["asmPreload"] = Module["asm"];
  1203. var asmjsReallocBuffer = Module["reallocBuffer"];
  1204. var wasmReallocBuffer = (function(size) {
  1205. var PAGE_MULTIPLE = Module["usingWasm"] ? WASM_PAGE_SIZE : ASMJS_PAGE_SIZE;
  1206. size = alignUp(size, PAGE_MULTIPLE);
  1207. var old = Module["buffer"];
  1208. var oldSize = old.byteLength;
  1209. if (Module["usingWasm"]) {
  1210. try {
  1211. var result = Module["wasmMemory"].grow((size - oldSize) / wasmPageSize);
  1212. if (result !== (-1 | 0)) {
  1213. return Module["buffer"] = Module["wasmMemory"].buffer;
  1214. } else {
  1215. return null;
  1216. }
  1217. } catch (e) {
  1218. console.error("Module.reallocBuffer: Attempted to grow from " + oldSize + " bytes to " + size + " bytes, but got error: " + e);
  1219. return null;
  1220. }
  1221. }
  1222. });
  1223. Module["reallocBuffer"] = (function(size) {
  1224. if (finalMethod === "asmjs") {
  1225. return asmjsReallocBuffer(size);
  1226. } else {
  1227. return wasmReallocBuffer(size);
  1228. }
  1229. });
  1230. var finalMethod = "";
  1231. Module["asm"] = (function(global, env, providedBuffer) {
  1232. env = fixImports(env);
  1233. if (!env["table"]) {
  1234. var TABLE_SIZE = Module["wasmTableSize"];
  1235. if (TABLE_SIZE === undefined) TABLE_SIZE = 1024;
  1236. var MAX_TABLE_SIZE = Module["wasmMaxTableSize"];
  1237. if (typeof WebAssembly === "object" && typeof WebAssembly.Table === "function") {
  1238. if (MAX_TABLE_SIZE !== undefined) {
  1239. env["table"] = new WebAssembly.Table({
  1240. "initial": TABLE_SIZE,
  1241. "maximum": MAX_TABLE_SIZE,
  1242. "element": "anyfunc"
  1243. });
  1244. } else {
  1245. env["table"] = new WebAssembly.Table({
  1246. "initial": TABLE_SIZE,
  1247. element: "anyfunc"
  1248. });
  1249. }
  1250. } else {
  1251. env["table"] = new Array(TABLE_SIZE);
  1252. }
  1253. Module["wasmTable"] = env["table"];
  1254. }
  1255. if (!env["memoryBase"]) {
  1256. env["memoryBase"] = Module["STATIC_BASE"];
  1257. }
  1258. if (!env["tableBase"]) {
  1259. env["tableBase"] = 0;
  1260. }
  1261. var exports;
  1262. exports = doNativeWasm(global, env, providedBuffer);
  1263. 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");
  1264. return exports;
  1265. });
  1266. }
  1267. integrateWasmJS();
  1268. var ASM_CONSTS = [ (function() {
  1269. return Module.webglContextAttributes.premultipliedAlpha;
  1270. }), (function() {
  1271. return Module.webglContextAttributes.preserveDrawingBuffer;
  1272. }), (function() {
  1273. Module["emscripten_get_now_backup"] = performance.now;
  1274. }), (function($0) {
  1275. performance.now = (function() {
  1276. return $0;
  1277. });
  1278. }), (function() {
  1279. performance.now = Module["emscripten_get_now_backup"];
  1280. }), (function() {
  1281. return typeof Module.shouldQuit != "undefined";
  1282. }), (function() {
  1283. for (var id in Module.intervals) {
  1284. window.clearInterval(id);
  1285. }
  1286. Module.intervals = {};
  1287. for (var i = 0; i < Module.deinitializers.length; i++) {
  1288. Module.deinitializers[i]();
  1289. }
  1290. Module.deinitializers = [];
  1291. if (typeof Module.onQuit == "function") Module.onQuit();
  1292. }) ];
  1293. function _emscripten_asm_const_i(code) {
  1294. return ASM_CONSTS[code]();
  1295. }
  1296. function _emscripten_asm_const_sync_on_main_thread_i(code) {
  1297. return ASM_CONSTS[code]();
  1298. }
  1299. function _emscripten_asm_const_id(code, a0) {
  1300. return ASM_CONSTS[code](a0);
  1301. }
  1302. STATIC_BASE = GLOBAL_BASE;
  1303. STATICTOP = STATIC_BASE + 2439408;
  1304. __ATINIT__.push({
  1305. func: (function() {
  1306. __GLOBAL__sub_I_AccessibilityScriptingClasses_cpp();
  1307. })
  1308. }, {
  1309. func: (function() {
  1310. __GLOBAL__sub_I_AIScriptingClasses_cpp();
  1311. })
  1312. }, {
  1313. func: (function() {
  1314. ___cxx_global_var_init_47();
  1315. })
  1316. }, {
  1317. func: (function() {
  1318. ___cxx_global_var_init_48();
  1319. })
  1320. }, {
  1321. func: (function() {
  1322. __GLOBAL__sub_I_Modules_AI_1_cpp();
  1323. })
  1324. }, {
  1325. func: (function() {
  1326. __GLOBAL__sub_I_Modules_AI_Builder_0_cpp();
  1327. })
  1328. }, {
  1329. func: (function() {
  1330. __GLOBAL__sub_I_Modules_AI_Crowd_0_cpp();
  1331. })
  1332. }, {
  1333. func: (function() {
  1334. __GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp();
  1335. })
  1336. }, {
  1337. func: (function() {
  1338. __GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp();
  1339. })
  1340. }, {
  1341. func: (function() {
  1342. ___cxx_global_var_init_199();
  1343. })
  1344. }, {
  1345. func: (function() {
  1346. __GLOBAL__sub_I_AIBindings_gen_cpp();
  1347. })
  1348. }, {
  1349. func: (function() {
  1350. __GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp();
  1351. })
  1352. }, {
  1353. func: (function() {
  1354. __GLOBAL__sub_I_AnimationScriptingClasses_cpp();
  1355. })
  1356. }, {
  1357. func: (function() {
  1358. __GLOBAL__sub_I_Modules_Animation_0_cpp();
  1359. })
  1360. }, {
  1361. func: (function() {
  1362. __GLOBAL__sub_I_Modules_Animation_2_cpp();
  1363. })
  1364. }, {
  1365. func: (function() {
  1366. __GLOBAL__sub_I_Modules_Animation_3_cpp();
  1367. })
  1368. }, {
  1369. func: (function() {
  1370. __GLOBAL__sub_I_Modules_Animation_4_cpp();
  1371. })
  1372. }, {
  1373. func: (function() {
  1374. __GLOBAL__sub_I_Modules_Animation_5_cpp();
  1375. })
  1376. }, {
  1377. func: (function() {
  1378. __GLOBAL__sub_I_Modules_Animation_6_cpp();
  1379. })
  1380. }, {
  1381. func: (function() {
  1382. ___cxx_global_var_init_20();
  1383. })
  1384. }, {
  1385. func: (function() {
  1386. ___cxx_global_var_init_21();
  1387. })
  1388. }, {
  1389. func: (function() {
  1390. __GLOBAL__sub_I_Modules_Animation_7_cpp();
  1391. })
  1392. }, {
  1393. func: (function() {
  1394. ___cxx_global_var_init_53();
  1395. })
  1396. }, {
  1397. func: (function() {
  1398. __GLOBAL__sub_I_Modules_Animation_Constraints_0_cpp();
  1399. })
  1400. }, {
  1401. func: (function() {
  1402. __GLOBAL__sub_I_Modules_Animation_Director_0_cpp();
  1403. })
  1404. }, {
  1405. func: (function() {
  1406. __GLOBAL__sub_I_Modules_Animation_Director_1_cpp();
  1407. })
  1408. }, {
  1409. func: (function() {
  1410. __GLOBAL__sub_I_AnimationBindings_gen_cpp();
  1411. })
  1412. }, {
  1413. func: (function() {
  1414. __GLOBAL__sub_I_ConstraintJob_cpp();
  1415. })
  1416. }, {
  1417. func: (function() {
  1418. __GLOBAL__sub_I_clipmuscle_cpp();
  1419. })
  1420. }, {
  1421. func: (function() {
  1422. __GLOBAL__sub_I_AnimationClip_cpp();
  1423. })
  1424. }, {
  1425. func: (function() {
  1426. __GLOBAL__sub_I_AssetBundleScriptingClasses_cpp();
  1427. })
  1428. }, {
  1429. func: (function() {
  1430. __GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp();
  1431. })
  1432. }, {
  1433. func: (function() {
  1434. __GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp();
  1435. })
  1436. }, {
  1437. func: (function() {
  1438. __GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp();
  1439. })
  1440. }, {
  1441. func: (function() {
  1442. __GLOBAL__sub_I_AudioScriptingClasses_cpp();
  1443. })
  1444. }, {
  1445. func: (function() {
  1446. __GLOBAL__sub_I_Runtime_Video_0_cpp();
  1447. })
  1448. }, {
  1449. func: (function() {
  1450. ___cxx_global_var_init_5();
  1451. })
  1452. }, {
  1453. func: (function() {
  1454. ___cxx_global_var_init_6_748();
  1455. })
  1456. }, {
  1457. func: (function() {
  1458. ___cxx_global_var_init_7();
  1459. })
  1460. }, {
  1461. func: (function() {
  1462. __GLOBAL__sub_I_Modules_Audio_Public_0_cpp();
  1463. })
  1464. }, {
  1465. func: (function() {
  1466. ___cxx_global_var_init_148();
  1467. })
  1468. }, {
  1469. func: (function() {
  1470. ___cxx_global_var_init_149();
  1471. })
  1472. }, {
  1473. func: (function() {
  1474. ___cxx_global_var_init_150();
  1475. })
  1476. }, {
  1477. func: (function() {
  1478. __GLOBAL__sub_I_Modules_Audio_Public_1_cpp();
  1479. })
  1480. }, {
  1481. func: (function() {
  1482. __GLOBAL__sub_I_Modules_Audio_Public_3_cpp();
  1483. })
  1484. }, {
  1485. func: (function() {
  1486. __GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp();
  1487. })
  1488. }, {
  1489. func: (function() {
  1490. __GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp();
  1491. })
  1492. }, {
  1493. func: (function() {
  1494. __GLOBAL__sub_I_ClothScriptingClasses_cpp();
  1495. })
  1496. }, {
  1497. func: (function() {
  1498. ___cxx_global_var_init_25();
  1499. })
  1500. }, {
  1501. func: (function() {
  1502. ___cxx_global_var_init_26();
  1503. })
  1504. }, {
  1505. func: (function() {
  1506. ___cxx_global_var_init_27();
  1507. })
  1508. }, {
  1509. func: (function() {
  1510. __GLOBAL__sub_I_Modules_Cloth_0_cpp();
  1511. })
  1512. }, {
  1513. func: (function() {
  1514. ___cxx_global_var_init_18();
  1515. })
  1516. }, {
  1517. func: (function() {
  1518. __GLOBAL__sub_I_nvcloth_src_0_cpp();
  1519. })
  1520. }, {
  1521. func: (function() {
  1522. __GLOBAL__sub_I_nvcloth_src_1_cpp();
  1523. })
  1524. }, {
  1525. func: (function() {
  1526. __GLOBAL__sub_I_SwInterCollision_cpp();
  1527. })
  1528. }, {
  1529. func: (function() {
  1530. __GLOBAL__sub_I_SwSolverKernel_cpp();
  1531. })
  1532. }, {
  1533. func: (function() {
  1534. __GLOBAL__sub_I_CloudFoundationScriptingClasses_cpp();
  1535. })
  1536. }, {
  1537. func: (function() {
  1538. __GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp();
  1539. })
  1540. }, {
  1541. func: (function() {
  1542. __GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp();
  1543. })
  1544. }, {
  1545. func: (function() {
  1546. __GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp();
  1547. })
  1548. }, {
  1549. func: (function() {
  1550. __GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp();
  1551. })
  1552. }, {
  1553. func: (function() {
  1554. __GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp();
  1555. })
  1556. }, {
  1557. func: (function() {
  1558. __GLOBAL__sub_I_Runtime_Input_0_cpp();
  1559. })
  1560. }, {
  1561. func: (function() {
  1562. __GLOBAL__sub_I_GfxDeviceNull_cpp();
  1563. })
  1564. }, {
  1565. func: (function() {
  1566. __GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp();
  1567. })
  1568. }, {
  1569. func: (function() {
  1570. __GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp();
  1571. })
  1572. }, {
  1573. func: (function() {
  1574. ___cxx_global_var_init_19();
  1575. })
  1576. }, {
  1577. func: (function() {
  1578. __GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp();
  1579. })
  1580. }, {
  1581. func: (function() {
  1582. ___cxx_global_var_init_17();
  1583. })
  1584. }, {
  1585. func: (function() {
  1586. __GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp();
  1587. })
  1588. }, {
  1589. func: (function() {
  1590. __GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp();
  1591. })
  1592. }, {
  1593. func: (function() {
  1594. __GLOBAL__sub_I_Runtime_Allocator_0_cpp();
  1595. })
  1596. }, {
  1597. func: (function() {
  1598. __GLOBAL__sub_I_Runtime_Allocator_2_cpp();
  1599. })
  1600. }, {
  1601. func: (function() {
  1602. __GLOBAL__sub_I_Runtime_Allocator_3_cpp();
  1603. })
  1604. }, {
  1605. func: (function() {
  1606. ___cxx_global_var_init_7_1313();
  1607. })
  1608. }, {
  1609. func: (function() {
  1610. __GLOBAL__sub_I_Runtime_Application_0_cpp();
  1611. })
  1612. }, {
  1613. func: (function() {
  1614. __GLOBAL__sub_I_Runtime_BaseClasses_0_cpp();
  1615. })
  1616. }, {
  1617. func: (function() {
  1618. __GLOBAL__sub_I_Runtime_BaseClasses_1_cpp();
  1619. })
  1620. }, {
  1621. func: (function() {
  1622. __GLOBAL__sub_I_Runtime_BaseClasses_2_cpp();
  1623. })
  1624. }, {
  1625. func: (function() {
  1626. __GLOBAL__sub_I_Runtime_BaseClasses_3_cpp();
  1627. })
  1628. }, {
  1629. func: (function() {
  1630. __GLOBAL__sub_I_Runtime_Burst_0_cpp();
  1631. })
  1632. }, {
  1633. func: (function() {
  1634. __GLOBAL__sub_I_Runtime_Camera_0_cpp();
  1635. })
  1636. }, {
  1637. func: (function() {
  1638. __GLOBAL__sub_I_Runtime_Camera_1_cpp();
  1639. })
  1640. }, {
  1641. func: (function() {
  1642. __GLOBAL__sub_I_Runtime_Camera_2_cpp();
  1643. })
  1644. }, {
  1645. func: (function() {
  1646. ___cxx_global_var_init_10();
  1647. })
  1648. }, {
  1649. func: (function() {
  1650. __GLOBAL__sub_I_Runtime_Camera_3_cpp();
  1651. })
  1652. }, {
  1653. func: (function() {
  1654. __GLOBAL__sub_I_Runtime_Camera_4_cpp();
  1655. })
  1656. }, {
  1657. func: (function() {
  1658. __GLOBAL__sub_I_Runtime_Camera_5_cpp();
  1659. })
  1660. }, {
  1661. func: (function() {
  1662. ___cxx_global_var_init_210();
  1663. })
  1664. }, {
  1665. func: (function() {
  1666. ___cxx_global_var_init_211();
  1667. })
  1668. }, {
  1669. func: (function() {
  1670. __GLOBAL__sub_I_Runtime_Camera_6_cpp();
  1671. })
  1672. }, {
  1673. func: (function() {
  1674. ___cxx_global_var_init_104();
  1675. })
  1676. }, {
  1677. func: (function() {
  1678. ___cxx_global_var_init_105();
  1679. })
  1680. }, {
  1681. func: (function() {
  1682. __GLOBAL__sub_I_Runtime_Camera_7_cpp();
  1683. })
  1684. }, {
  1685. func: (function() {
  1686. __GLOBAL__sub_I_Runtime_Camera_8_cpp();
  1687. })
  1688. }, {
  1689. func: (function() {
  1690. __GLOBAL__sub_I_Shadows_cpp();
  1691. })
  1692. }, {
  1693. func: (function() {
  1694. __GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp();
  1695. })
  1696. }, {
  1697. func: (function() {
  1698. __GLOBAL__sub_I_GUITexture_cpp();
  1699. })
  1700. }, {
  1701. func: (function() {
  1702. __GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp();
  1703. })
  1704. }, {
  1705. func: (function() {
  1706. __GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp();
  1707. })
  1708. }, {
  1709. func: (function() {
  1710. __GLOBAL__sub_I_Runtime_Containers_0_cpp();
  1711. })
  1712. }, {
  1713. func: (function() {
  1714. __GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp();
  1715. })
  1716. }, {
  1717. func: (function() {
  1718. __GLOBAL__sub_I_Runtime_File_0_cpp();
  1719. })
  1720. }, {
  1721. func: (function() {
  1722. __GLOBAL__sub_I_Runtime_GameCode_0_cpp();
  1723. })
  1724. }, {
  1725. func: (function() {
  1726. __GLOBAL__sub_I_Runtime_Geometry_1_cpp();
  1727. })
  1728. }, {
  1729. func: (function() {
  1730. __GLOBAL__sub_I_Runtime_Geometry_2_cpp();
  1731. })
  1732. }, {
  1733. func: (function() {
  1734. __GLOBAL__sub_I_Runtime_Graphics_0_cpp();
  1735. })
  1736. }, {
  1737. func: (function() {
  1738. ___cxx_global_var_init_136();
  1739. })
  1740. }, {
  1741. func: (function() {
  1742. ___cxx_global_var_init_137();
  1743. })
  1744. }, {
  1745. func: (function() {
  1746. __GLOBAL__sub_I_Runtime_Graphics_1_cpp();
  1747. })
  1748. }, {
  1749. func: (function() {
  1750. __GLOBAL__sub_I_Runtime_Graphics_2_cpp();
  1751. })
  1752. }, {
  1753. func: (function() {
  1754. ___cxx_global_var_init_88();
  1755. })
  1756. }, {
  1757. func: (function() {
  1758. __GLOBAL__sub_I_Runtime_Graphics_4_cpp();
  1759. })
  1760. }, {
  1761. func: (function() {
  1762. __GLOBAL__sub_I_Runtime_Graphics_5_cpp();
  1763. })
  1764. }, {
  1765. func: (function() {
  1766. __GLOBAL__sub_I_Runtime_Graphics_6_cpp();
  1767. })
  1768. }, {
  1769. func: (function() {
  1770. __GLOBAL__sub_I_Runtime_Graphics_8_cpp();
  1771. })
  1772. }, {
  1773. func: (function() {
  1774. __GLOBAL__sub_I_Runtime_Graphics_10_cpp();
  1775. })
  1776. }, {
  1777. func: (function() {
  1778. __GLOBAL__sub_I_Runtime_Graphics_11_cpp();
  1779. })
  1780. }, {
  1781. func: (function() {
  1782. __GLOBAL__sub_I_Runtime_Graphics_12_cpp();
  1783. })
  1784. }, {
  1785. func: (function() {
  1786. __GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp();
  1787. })
  1788. }, {
  1789. func: (function() {
  1790. __GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp();
  1791. })
  1792. }, {
  1793. func: (function() {
  1794. __GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp();
  1795. })
  1796. }, {
  1797. func: (function() {
  1798. __GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp();
  1799. })
  1800. }, {
  1801. func: (function() {
  1802. __GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp();
  1803. })
  1804. }, {
  1805. func: (function() {
  1806. ___cxx_global_var_init_12();
  1807. })
  1808. }, {
  1809. func: (function() {
  1810. __GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp();
  1811. })
  1812. }, {
  1813. func: (function() {
  1814. __GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp();
  1815. })
  1816. }, {
  1817. func: (function() {
  1818. __GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp();
  1819. })
  1820. }, {
  1821. func: (function() {
  1822. ___cxx_global_var_init_55();
  1823. })
  1824. }, {
  1825. func: (function() {
  1826. __GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp();
  1827. })
  1828. }, {
  1829. func: (function() {
  1830. __GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp();
  1831. })
  1832. }, {
  1833. func: (function() {
  1834. __GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp();
  1835. })
  1836. }, {
  1837. func: (function() {
  1838. __GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp();
  1839. })
  1840. }, {
  1841. func: (function() {
  1842. __GLOBAL__sub_I_Runtime_Interfaces_0_cpp();
  1843. })
  1844. }, {
  1845. func: (function() {
  1846. __GLOBAL__sub_I_Runtime_Interfaces_1_cpp();
  1847. })
  1848. }, {
  1849. func: (function() {
  1850. __GLOBAL__sub_I_Runtime_Interfaces_3_cpp();
  1851. })
  1852. }, {
  1853. func: (function() {
  1854. __GLOBAL__sub_I_Runtime_Jobs_0_cpp();
  1855. })
  1856. }, {
  1857. func: (function() {
  1858. __GLOBAL__sub_I_Runtime_Jobs_1_cpp();
  1859. })
  1860. }, {
  1861. func: (function() {
  1862. __GLOBAL__sub_I_Runtime_Jobs_2_cpp();
  1863. })
  1864. }, {
  1865. func: (function() {
  1866. __GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp();
  1867. })
  1868. }, {
  1869. func: (function() {
  1870. __GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp();
  1871. })
  1872. }, {
  1873. func: (function() {
  1874. __GLOBAL__sub_I_Runtime_Math_2_cpp();
  1875. })
  1876. }, {
  1877. func: (function() {
  1878. __GLOBAL__sub_I_Runtime_Math_Random_0_cpp();
  1879. })
  1880. }, {
  1881. func: (function() {
  1882. __GLOBAL__sub_I_Runtime_Misc_0_cpp();
  1883. })
  1884. }, {
  1885. func: (function() {
  1886. ___cxx_global_var_init_71();
  1887. })
  1888. }, {
  1889. func: (function() {
  1890. __GLOBAL__sub_I_Runtime_Misc_1_cpp();
  1891. })
  1892. }, {
  1893. func: (function() {
  1894. ___cxx_global_var_init_192();
  1895. })
  1896. }, {
  1897. func: (function() {
  1898. ___cxx_global_var_init_193();
  1899. })
  1900. }, {
  1901. func: (function() {
  1902. ___cxx_global_var_init_194();
  1903. })
  1904. }, {
  1905. func: (function() {
  1906. ___cxx_global_var_init_195();
  1907. })
  1908. }, {
  1909. func: (function() {
  1910. ___cxx_global_var_init_196();
  1911. })
  1912. }, {
  1913. func: (function() {
  1914. ___cxx_global_var_init_197();
  1915. })
  1916. }, {
  1917. func: (function() {
  1918. ___cxx_global_var_init_198();
  1919. })
  1920. }, {
  1921. func: (function() {
  1922. __GLOBAL__sub_I_Runtime_Misc_2_cpp();
  1923. })
  1924. }, {
  1925. func: (function() {
  1926. ___cxx_global_var_init_162();
  1927. })
  1928. }, {
  1929. func: (function() {
  1930. __GLOBAL__sub_I_Runtime_Misc_3_cpp();
  1931. })
  1932. }, {
  1933. func: (function() {
  1934. ___cxx_global_var_init_15();
  1935. })
  1936. }, {
  1937. func: (function() {
  1938. __GLOBAL__sub_I_Runtime_Misc_4_cpp();
  1939. })
  1940. }, {
  1941. func: (function() {
  1942. ___cxx_global_var_init_172();
  1943. })
  1944. }, {
  1945. func: (function() {
  1946. ___cxx_global_var_init_173();
  1947. })
  1948. }, {
  1949. func: (function() {
  1950. ___cxx_global_var_init_174();
  1951. })
  1952. }, {
  1953. func: (function() {
  1954. ___cxx_global_var_init_175();
  1955. })
  1956. }, {
  1957. func: (function() {
  1958. ___cxx_global_var_init_176();
  1959. })
  1960. }, {
  1961. func: (function() {
  1962. ___cxx_global_var_init_177();
  1963. })
  1964. }, {
  1965. func: (function() {
  1966. ___cxx_global_var_init_178();
  1967. })
  1968. }, {
  1969. func: (function() {
  1970. ___cxx_global_var_init_179();
  1971. })
  1972. }, {
  1973. func: (function() {
  1974. ___cxx_global_var_init_180();
  1975. })
  1976. }, {
  1977. func: (function() {
  1978. ___cxx_global_var_init_181();
  1979. })
  1980. }, {
  1981. func: (function() {
  1982. ___cxx_global_var_init_182();
  1983. })
  1984. }, {
  1985. func: (function() {
  1986. ___cxx_global_var_init_183();
  1987. })
  1988. }, {
  1989. func: (function() {
  1990. ___cxx_global_var_init_184();
  1991. })
  1992. }, {
  1993. func: (function() {
  1994. ___cxx_global_var_init_185();
  1995. })
  1996. }, {
  1997. func: (function() {
  1998. ___cxx_global_var_init_186();
  1999. })
  2000. }, {
  2001. func: (function() {
  2002. ___cxx_global_var_init_187();
  2003. })
  2004. }, {
  2005. func: (function() {
  2006. ___cxx_global_var_init_188();
  2007. })
  2008. }, {
  2009. func: (function() {
  2010. ___cxx_global_var_init_189();
  2011. })
  2012. }, {
  2013. func: (function() {
  2014. ___cxx_global_var_init_190();
  2015. })
  2016. }, {
  2017. func: (function() {
  2018. ___cxx_global_var_init_191();
  2019. })
  2020. }, {
  2021. func: (function() {
  2022. ___cxx_global_var_init_192_8380();
  2023. })
  2024. }, {
  2025. func: (function() {
  2026. ___cxx_global_var_init_193_8381();
  2027. })
  2028. }, {
  2029. func: (function() {
  2030. ___cxx_global_var_init_194_8382();
  2031. })
  2032. }, {
  2033. func: (function() {
  2034. ___cxx_global_var_init_195_8383();
  2035. })
  2036. }, {
  2037. func: (function() {
  2038. ___cxx_global_var_init_196_8384();
  2039. })
  2040. }, {
  2041. func: (function() {
  2042. ___cxx_global_var_init_197_8385();
  2043. })
  2044. }, {
  2045. func: (function() {
  2046. ___cxx_global_var_init_198_8386();
  2047. })
  2048. }, {
  2049. func: (function() {
  2050. ___cxx_global_var_init_199_1314();
  2051. })
  2052. }, {
  2053. func: (function() {
  2054. ___cxx_global_var_init_200();
  2055. })
  2056. }, {
  2057. func: (function() {
  2058. ___cxx_global_var_init_201();
  2059. })
  2060. }, {
  2061. func: (function() {
  2062. ___cxx_global_var_init_202();
  2063. })
  2064. }, {
  2065. func: (function() {
  2066. ___cxx_global_var_init_203();
  2067. })
  2068. }, {
  2069. func: (function() {
  2070. ___cxx_global_var_init_204();
  2071. })
  2072. }, {
  2073. func: (function() {
  2074. ___cxx_global_var_init_205();
  2075. })
  2076. }, {
  2077. func: (function() {
  2078. ___cxx_global_var_init_206();
  2079. })
  2080. }, {
  2081. func: (function() {
  2082. ___cxx_global_var_init_207();
  2083. })
  2084. }, {
  2085. func: (function() {
  2086. ___cxx_global_var_init_208();
  2087. })
  2088. }, {
  2089. func: (function() {
  2090. ___cxx_global_var_init_209();
  2091. })
  2092. }, {
  2093. func: (function() {
  2094. ___cxx_global_var_init_210_8387();
  2095. })
  2096. }, {
  2097. func: (function() {
  2098. ___cxx_global_var_init_211_8388();
  2099. })
  2100. }, {
  2101. func: (function() {
  2102. ___cxx_global_var_init_212();
  2103. })
  2104. }, {
  2105. func: (function() {
  2106. ___cxx_global_var_init_213();
  2107. })
  2108. }, {
  2109. func: (function() {
  2110. ___cxx_global_var_init_214();
  2111. })
  2112. }, {
  2113. func: (function() {
  2114. ___cxx_global_var_init_215();
  2115. })
  2116. }, {
  2117. func: (function() {
  2118. ___cxx_global_var_init_216();
  2119. })
  2120. }, {
  2121. func: (function() {
  2122. ___cxx_global_var_init_217();
  2123. })
  2124. }, {
  2125. func: (function() {
  2126. ___cxx_global_var_init_218();
  2127. })
  2128. }, {
  2129. func: (function() {
  2130. ___cxx_global_var_init_219();
  2131. })
  2132. }, {
  2133. func: (function() {
  2134. ___cxx_global_var_init_220();
  2135. })
  2136. }, {
  2137. func: (function() {
  2138. ___cxx_global_var_init_221();
  2139. })
  2140. }, {
  2141. func: (function() {
  2142. ___cxx_global_var_init_222();
  2143. })
  2144. }, {
  2145. func: (function() {
  2146. ___cxx_global_var_init_223();
  2147. })
  2148. }, {
  2149. func: (function() {
  2150. ___cxx_global_var_init_224();
  2151. })
  2152. }, {
  2153. func: (function() {
  2154. ___cxx_global_var_init_225();
  2155. })
  2156. }, {
  2157. func: (function() {
  2158. ___cxx_global_var_init_226();
  2159. })
  2160. }, {
  2161. func: (function() {
  2162. ___cxx_global_var_init_227();
  2163. })
  2164. }, {
  2165. func: (function() {
  2166. __GLOBAL__sub_I_Runtime_Misc_5_cpp();
  2167. })
  2168. }, {
  2169. func: (function() {
  2170. ___cxx_global_var_init_34();
  2171. })
  2172. }, {
  2173. func: (function() {
  2174. __GLOBAL__sub_I_Runtime_Network_0_cpp();
  2175. })
  2176. }, {
  2177. func: (function() {
  2178. ___cxx_global_var_init_86();
  2179. })
  2180. }, {
  2181. func: (function() {
  2182. ___cxx_global_var_init_87();
  2183. })
  2184. }, {
  2185. func: (function() {
  2186. ___cxx_global_var_init_88_8675();
  2187. })
  2188. }, {
  2189. func: (function() {
  2190. __GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp();
  2191. })
  2192. }, {
  2193. func: (function() {
  2194. ___cxx_global_var_init_31_8788();
  2195. })
  2196. }, {
  2197. func: (function() {
  2198. ___cxx_global_var_init_32();
  2199. })
  2200. }, {
  2201. func: (function() {
  2202. ___cxx_global_var_init_33_8789();
  2203. })
  2204. }, {
  2205. func: (function() {
  2206. ___cxx_global_var_init_34_8790();
  2207. })
  2208. }, {
  2209. func: (function() {
  2210. ___cxx_global_var_init_35();
  2211. })
  2212. }, {
  2213. func: (function() {
  2214. __GLOBAL__sub_I_Runtime_PreloadManager_0_cpp();
  2215. })
  2216. }, {
  2217. func: (function() {
  2218. ___cxx_global_var_init_79();
  2219. })
  2220. }, {
  2221. func: (function() {
  2222. __GLOBAL__sub_I_Runtime_Profiler_0_cpp();
  2223. })
  2224. }, {
  2225. func: (function() {
  2226. __GLOBAL__sub_I_Runtime_Profiler_1_cpp();
  2227. })
  2228. }, {
  2229. func: (function() {
  2230. __GLOBAL__sub_I_Runtime_Profiler_2_cpp();
  2231. })
  2232. }, {
  2233. func: (function() {
  2234. __GLOBAL__sub_I_Runtime_Profiler_ExternalGPUProfiler_0_cpp();
  2235. })
  2236. }, {
  2237. func: (function() {
  2238. __GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp();
  2239. })
  2240. }, {
  2241. func: (function() {
  2242. ___cxx_global_var_init_27_9088();
  2243. })
  2244. }, {
  2245. func: (function() {
  2246. ___cxx_global_var_init_28();
  2247. })
  2248. }, {
  2249. func: (function() {
  2250. ___cxx_global_var_init_29_9089();
  2251. })
  2252. }, {
  2253. func: (function() {
  2254. ___cxx_global_var_init_30();
  2255. })
  2256. }, {
  2257. func: (function() {
  2258. ___cxx_global_var_init_31_9090();
  2259. })
  2260. }, {
  2261. func: (function() {
  2262. __GLOBAL__sub_I_Runtime_SceneManager_0_cpp();
  2263. })
  2264. }, {
  2265. func: (function() {
  2266. ___cxx_global_var_init_34_9202();
  2267. })
  2268. }, {
  2269. func: (function() {
  2270. __GLOBAL__sub_I_Runtime_Shaders_0_cpp();
  2271. })
  2272. }, {
  2273. func: (function() {
  2274. __GLOBAL__sub_I_Runtime_Shaders_1_cpp();
  2275. })
  2276. }, {
  2277. func: (function() {
  2278. ___cxx_global_var_init_61();
  2279. })
  2280. }, {
  2281. func: (function() {
  2282. __GLOBAL__sub_I_Runtime_Shaders_4_cpp();
  2283. })
  2284. }, {
  2285. func: (function() {
  2286. __GLOBAL__sub_I_Runtime_Shaders_5_cpp();
  2287. })
  2288. }, {
  2289. func: (function() {
  2290. __GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp();
  2291. })
  2292. }, {
  2293. func: (function() {
  2294. ___cxx_global_var_init_33_10225();
  2295. })
  2296. }, {
  2297. func: (function() {
  2298. __GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp();
  2299. })
  2300. }, {
  2301. func: (function() {
  2302. __GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp();
  2303. })
  2304. }, {
  2305. func: (function() {
  2306. __GLOBAL__sub_I_Runtime_Streaming_0_cpp();
  2307. })
  2308. }, {
  2309. func: (function() {
  2310. __GLOBAL__sub_I_Runtime_Streaming_1_cpp();
  2311. })
  2312. }, {
  2313. func: (function() {
  2314. ___cxx_global_var_init_47_1315();
  2315. })
  2316. }, {
  2317. func: (function() {
  2318. __GLOBAL__sub_I_Runtime_Transform_0_cpp();
  2319. })
  2320. }, {
  2321. func: (function() {
  2322. __GLOBAL__sub_I_Runtime_Transform_1_cpp();
  2323. })
  2324. }, {
  2325. func: (function() {
  2326. __GLOBAL__sub_I_UIWidgets_cpp();
  2327. })
  2328. }, {
  2329. func: (function() {
  2330. __GLOBAL__sub_I_Runtime_Utilities_2_cpp();
  2331. })
  2332. }, {
  2333. func: (function() {
  2334. ___cxx_global_var_init_10913();
  2335. })
  2336. }, {
  2337. func: (function() {
  2338. __GLOBAL__sub_I_Runtime_Utilities_5_cpp();
  2339. })
  2340. }, {
  2341. func: (function() {
  2342. __GLOBAL__sub_I_Runtime_Utilities_6_cpp();
  2343. })
  2344. }, {
  2345. func: (function() {
  2346. __GLOBAL__sub_I_Runtime_Utilities_7_cpp();
  2347. })
  2348. }, {
  2349. func: (function() {
  2350. __GLOBAL__sub_I_Runtime_Utilities_8_cpp();
  2351. })
  2352. }, {
  2353. func: (function() {
  2354. __GLOBAL__sub_I_Runtime_Utilities_9_cpp();
  2355. })
  2356. }, {
  2357. func: (function() {
  2358. __GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp();
  2359. })
  2360. }, {
  2361. func: (function() {
  2362. __GLOBAL__sub_I_AssetBundleFileSystem_cpp();
  2363. })
  2364. }, {
  2365. func: (function() {
  2366. __GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp();
  2367. })
  2368. }, {
  2369. func: (function() {
  2370. __GLOBAL__sub_I_Runtime_Modules_0_cpp();
  2371. })
  2372. }, {
  2373. func: (function() {
  2374. __GLOBAL__sub_I_Modules_Profiler_Public_0_cpp();
  2375. })
  2376. }, {
  2377. func: (function() {
  2378. ___cxx_global_var_init_58();
  2379. })
  2380. }, {
  2381. func: (function() {
  2382. ___cxx_global_var_init_59();
  2383. })
  2384. }, {
  2385. func: (function() {
  2386. ___cxx_global_var_init_60();
  2387. })
  2388. }, {
  2389. func: (function() {
  2390. __GLOBAL__sub_I_Modules_Profiler_Public_1_cpp();
  2391. })
  2392. }, {
  2393. func: (function() {
  2394. __GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp();
  2395. })
  2396. }, {
  2397. func: (function() {
  2398. __GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp();
  2399. })
  2400. }, {
  2401. func: (function() {
  2402. __GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp();
  2403. })
  2404. }, {
  2405. func: (function() {
  2406. __GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp();
  2407. })
  2408. }, {
  2409. func: (function() {
  2410. __GLOBAL__sub_I_Runtime_Export_Unsafe_0_cpp();
  2411. })
  2412. }, {
  2413. func: (function() {
  2414. __GLOBAL__sub_I_Runtime_GfxDevice_1_cpp();
  2415. })
  2416. }, {
  2417. func: (function() {
  2418. __GLOBAL__sub_I_Runtime_GfxDevice_2_cpp();
  2419. })
  2420. }, {
  2421. func: (function() {
  2422. __GLOBAL__sub_I_Runtime_GfxDevice_3_cpp();
  2423. })
  2424. }, {
  2425. func: (function() {
  2426. ___cxx_global_var_init_92();
  2427. })
  2428. }, {
  2429. func: (function() {
  2430. ___cxx_global_var_init_93();
  2431. })
  2432. }, {
  2433. func: (function() {
  2434. ___cxx_global_var_init_94();
  2435. })
  2436. }, {
  2437. func: (function() {
  2438. __GLOBAL__sub_I_Runtime_GfxDevice_4_cpp();
  2439. })
  2440. }, {
  2441. func: (function() {
  2442. __GLOBAL__sub_I_Runtime_GfxDevice_5_cpp();
  2443. })
  2444. }, {
  2445. func: (function() {
  2446. __GLOBAL__sub_I_Runtime_PluginInterface_0_cpp();
  2447. })
  2448. }, {
  2449. func: (function() {
  2450. __GLOBAL__sub_I_Runtime_Director_Core_0_cpp();
  2451. })
  2452. }, {
  2453. func: (function() {
  2454. ___cxx_global_var_init_36();
  2455. })
  2456. }, {
  2457. func: (function() {
  2458. ___cxx_global_var_init_37();
  2459. })
  2460. }, {
  2461. func: (function() {
  2462. ___cxx_global_var_init_38();
  2463. })
  2464. }, {
  2465. func: (function() {
  2466. ___cxx_global_var_init_39();
  2467. })
  2468. }, {
  2469. func: (function() {
  2470. ___cxx_global_var_init_40();
  2471. })
  2472. }, {
  2473. func: (function() {
  2474. ___cxx_global_var_init_41();
  2475. })
  2476. }, {
  2477. func: (function() {
  2478. ___cxx_global_var_init_42();
  2479. })
  2480. }, {
  2481. func: (function() {
  2482. ___cxx_global_var_init_43();
  2483. })
  2484. }, {
  2485. func: (function() {
  2486. ___cxx_global_var_init_44();
  2487. })
  2488. }, {
  2489. func: (function() {
  2490. ___cxx_global_var_init_45();
  2491. })
  2492. }, {
  2493. func: (function() {
  2494. ___cxx_global_var_init_46();
  2495. })
  2496. }, {
  2497. func: (function() {
  2498. ___cxx_global_var_init_47_12782();
  2499. })
  2500. }, {
  2501. func: (function() {
  2502. ___cxx_global_var_init_48_1316();
  2503. })
  2504. }, {
  2505. func: (function() {
  2506. ___cxx_global_var_init_49();
  2507. })
  2508. }, {
  2509. func: (function() {
  2510. __GLOBAL__sub_I_Runtime_Director_Core_1_cpp();
  2511. })
  2512. }, {
  2513. func: (function() {
  2514. __GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp();
  2515. })
  2516. }, {
  2517. func: (function() {
  2518. ___cxx_global_var_init_155();
  2519. })
  2520. }, {
  2521. func: (function() {
  2522. __GLOBAL__sub_I_Runtime_Scripting_0_cpp();
  2523. })
  2524. }, {
  2525. func: (function() {
  2526. __GLOBAL__sub_I_Runtime_Scripting_2_cpp();
  2527. })
  2528. }, {
  2529. func: (function() {
  2530. ___cxx_global_var_init_41_13464();
  2531. })
  2532. }, {
  2533. func: (function() {
  2534. __GLOBAL__sub_I_Runtime_Scripting_3_cpp();
  2535. })
  2536. }, {
  2537. func: (function() {
  2538. ___cxx_global_var_init_63();
  2539. })
  2540. }, {
  2541. func: (function() {
  2542. __GLOBAL__sub_I_Runtime_Mono_0_cpp();
  2543. })
  2544. }, {
  2545. func: (function() {
  2546. __GLOBAL__sub_I_Runtime_Mono_2_cpp();
  2547. })
  2548. }, {
  2549. func: (function() {
  2550. __GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp();
  2551. })
  2552. }, {
  2553. func: (function() {
  2554. __GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp();
  2555. })
  2556. }, {
  2557. func: (function() {
  2558. __GLOBAL__sub_I_TemplateInstantiations_cpp();
  2559. })
  2560. }, {
  2561. func: (function() {
  2562. __GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp();
  2563. })
  2564. }, {
  2565. func: (function() {
  2566. __GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp();
  2567. })
  2568. }, {
  2569. func: (function() {
  2570. __GLOBAL__sub_I_Runtime_Serialize_0_cpp();
  2571. })
  2572. }, {
  2573. func: (function() {
  2574. __GLOBAL__sub_I_Runtime_Serialize_1_cpp();
  2575. })
  2576. }, {
  2577. func: (function() {
  2578. __GLOBAL__sub_I_Runtime_Serialize_2_cpp();
  2579. })
  2580. }, {
  2581. func: (function() {
  2582. __GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp();
  2583. })
  2584. }, {
  2585. func: (function() {
  2586. __GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp();
  2587. })
  2588. }, {
  2589. func: (function() {
  2590. __GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp();
  2591. })
  2592. }, {
  2593. func: (function() {
  2594. ___cxx_global_var_init_144();
  2595. })
  2596. }, {
  2597. func: (function() {
  2598. __GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp();
  2599. })
  2600. }, {
  2601. func: (function() {
  2602. __GLOBAL__sub_I_CoreBindings_gen_cpp();
  2603. })
  2604. }, {
  2605. func: (function() {
  2606. __GLOBAL__sub_I_LineRenderer_cpp();
  2607. })
  2608. }, {
  2609. func: (function() {
  2610. __GLOBAL__sub_I_QualitySettings_cpp();
  2611. })
  2612. }, {
  2613. func: (function() {
  2614. __GLOBAL__sub_I_TrailRenderer_cpp();
  2615. })
  2616. }, {
  2617. func: (function() {
  2618. __GLOBAL__sub_I_Mesh_cpp();
  2619. })
  2620. }, {
  2621. func: (function() {
  2622. __GLOBAL__sub_I_LogAssert_cpp();
  2623. })
  2624. }, {
  2625. func: (function() {
  2626. ___cxx_global_var_init_17063();
  2627. })
  2628. }, {
  2629. func: (function() {
  2630. __GLOBAL__sub_I_Shader_cpp();
  2631. })
  2632. }, {
  2633. func: (function() {
  2634. __GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Source_0_cpp();
  2635. })
  2636. }, {
  2637. func: (function() {
  2638. __GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp();
  2639. })
  2640. }, {
  2641. func: (function() {
  2642. __GLOBAL__sub_I_DirectorScriptingClasses_cpp();
  2643. })
  2644. }, {
  2645. func: (function() {
  2646. __GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp();
  2647. })
  2648. }, {
  2649. func: (function() {
  2650. __GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp();
  2651. })
  2652. }, {
  2653. func: (function() {
  2654. __GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp();
  2655. })
  2656. }, {
  2657. func: (function() {
  2658. __GLOBAL__sub_I_DSPGraphBindings_gen_cpp();
  2659. })
  2660. }, {
  2661. func: (function() {
  2662. __GLOBAL__sub_I_GridScriptingClasses_cpp();
  2663. })
  2664. }, {
  2665. func: (function() {
  2666. __GLOBAL__sub_I_Modules_Grid_Public_0_cpp();
  2667. })
  2668. }, {
  2669. func: (function() {
  2670. ___cxx_global_var_init_4115();
  2671. })
  2672. }, {
  2673. func: (function() {
  2674. __GLOBAL__sub_I_IMGUIScriptingClasses_cpp();
  2675. })
  2676. }, {
  2677. func: (function() {
  2678. __GLOBAL__sub_I_Modules_IMGUI_0_cpp();
  2679. })
  2680. }, {
  2681. func: (function() {
  2682. ___cxx_global_var_init_29_4254();
  2683. })
  2684. }, {
  2685. func: (function() {
  2686. ___cxx_global_var_init_30_4255();
  2687. })
  2688. }, {
  2689. func: (function() {
  2690. ___cxx_global_var_init_31_4256();
  2691. })
  2692. }, {
  2693. func: (function() {
  2694. __GLOBAL__sub_I_Modules_IMGUI_1_cpp();
  2695. })
  2696. }, {
  2697. func: (function() {
  2698. __GLOBAL__sub_I_InputLegacyScriptingClasses_cpp();
  2699. })
  2700. }, {
  2701. func: (function() {
  2702. ___cxx_global_var_init_3_4490();
  2703. })
  2704. }, {
  2705. func: (function() {
  2706. __GLOBAL__sub_I_InputLegacyModuleRegistration_cpp();
  2707. })
  2708. }, {
  2709. func: (function() {
  2710. __GLOBAL__sub_I_InputScriptingClasses_cpp();
  2711. })
  2712. }, {
  2713. func: (function() {
  2714. ___cxx_global_var_init_6_4577();
  2715. })
  2716. }, {
  2717. func: (function() {
  2718. ___cxx_global_var_init_7_4578();
  2719. })
  2720. }, {
  2721. func: (function() {
  2722. ___cxx_global_var_init_8_4579();
  2723. })
  2724. }, {
  2725. func: (function() {
  2726. ___cxx_global_var_init_9_4580();
  2727. })
  2728. }, {
  2729. func: (function() {
  2730. __GLOBAL__sub_I_Modules_Input_Private_0_cpp();
  2731. })
  2732. }, {
  2733. func: (function() {
  2734. __GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp();
  2735. })
  2736. }, {
  2737. func: (function() {
  2738. ___cxx_global_var_init_43_4837();
  2739. })
  2740. }, {
  2741. func: (function() {
  2742. __GLOBAL__sub_I_Modules_ParticleSystem_0_cpp();
  2743. })
  2744. }, {
  2745. func: (function() {
  2746. ___cxx_global_var_init_58_4838();
  2747. })
  2748. }, {
  2749. func: (function() {
  2750. ___cxx_global_var_init_59_4839();
  2751. })
  2752. }, {
  2753. func: (function() {
  2754. ___cxx_global_var_init_60_4840();
  2755. })
  2756. }, {
  2757. func: (function() {
  2758. __GLOBAL__sub_I_Modules_ParticleSystem_1_cpp();
  2759. })
  2760. }, {
  2761. func: (function() {
  2762. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp();
  2763. })
  2764. }, {
  2765. func: (function() {
  2766. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp();
  2767. })
  2768. }, {
  2769. func: (function() {
  2770. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp();
  2771. })
  2772. }, {
  2773. func: (function() {
  2774. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp();
  2775. })
  2776. }, {
  2777. func: (function() {
  2778. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp();
  2779. })
  2780. }, {
  2781. func: (function() {
  2782. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp();
  2783. })
  2784. }, {
  2785. func: (function() {
  2786. __GLOBAL__sub_I_ParticleSystemBindings_gen_cpp();
  2787. })
  2788. }, {
  2789. func: (function() {
  2790. __GLOBAL__sub_I_ParticleSystemGeometryJob_cpp();
  2791. })
  2792. }, {
  2793. func: (function() {
  2794. __GLOBAL__sub_I_ExternalForcesModule_cpp();
  2795. })
  2796. }, {
  2797. func: (function() {
  2798. __GLOBAL__sub_I_NoiseModule_cpp();
  2799. })
  2800. }, {
  2801. func: (function() {
  2802. __GLOBAL__sub_I_ShapeModule_cpp();
  2803. })
  2804. }, {
  2805. func: (function() {
  2806. __GLOBAL__sub_I_UVModule_cpp();
  2807. })
  2808. }, {
  2809. func: (function() {
  2810. __GLOBAL__sub_I_VelocityModule_cpp();
  2811. })
  2812. }, {
  2813. func: (function() {
  2814. ___cxx_global_var_init_27_5703();
  2815. })
  2816. }, {
  2817. func: (function() {
  2818. __GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp();
  2819. })
  2820. }, {
  2821. func: (function() {
  2822. __GLOBAL__sub_I_Physics2DScriptingClasses_cpp();
  2823. })
  2824. }, {
  2825. func: (function() {
  2826. __GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp();
  2827. })
  2828. }, {
  2829. func: (function() {
  2830. __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp();
  2831. })
  2832. }, {
  2833. func: (function() {
  2834. __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp();
  2835. })
  2836. }, {
  2837. func: (function() {
  2838. __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp();
  2839. })
  2840. }, {
  2841. func: (function() {
  2842. __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp();
  2843. })
  2844. }, {
  2845. func: (function() {
  2846. ___cxx_global_var_init_112();
  2847. })
  2848. }, {
  2849. func: (function() {
  2850. ___cxx_global_var_init_113();
  2851. })
  2852. }, {
  2853. func: (function() {
  2854. ___cxx_global_var_init_114();
  2855. })
  2856. }, {
  2857. func: (function() {
  2858. __GLOBAL__sub_I_Modules_Physics2D_0_cpp();
  2859. })
  2860. }, {
  2861. func: (function() {
  2862. __GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp();
  2863. })
  2864. }, {
  2865. func: (function() {
  2866. __GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp();
  2867. })
  2868. }, {
  2869. func: (function() {
  2870. __GLOBAL__sub_I_PhysicsScriptingClasses_cpp();
  2871. })
  2872. }, {
  2873. func: (function() {
  2874. __GLOBAL__sub_I_Modules_Physics_0_cpp();
  2875. })
  2876. }, {
  2877. func: (function() {
  2878. ___cxx_global_var_init_91();
  2879. })
  2880. }, {
  2881. func: (function() {
  2882. ___cxx_global_var_init_92_6304();
  2883. })
  2884. }, {
  2885. func: (function() {
  2886. ___cxx_global_var_init_93_6305();
  2887. })
  2888. }, {
  2889. func: (function() {
  2890. ___cxx_global_var_init_94_6306();
  2891. })
  2892. }, {
  2893. func: (function() {
  2894. ___cxx_global_var_init_95();
  2895. })
  2896. }, {
  2897. func: (function() {
  2898. __GLOBAL__sub_I_Modules_Physics_2_cpp();
  2899. })
  2900. }, {
  2901. func: (function() {
  2902. __GLOBAL__sub_I_Modules_Physics_3_cpp();
  2903. })
  2904. }, {
  2905. func: (function() {
  2906. __GLOBAL__sub_I_Modules_Physics_4_cpp();
  2907. })
  2908. }, {
  2909. func: (function() {
  2910. __GLOBAL__sub_I_PhysicsQuery_cpp();
  2911. })
  2912. }, {
  2913. func: (function() {
  2914. __GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp();
  2915. })
  2916. }, {
  2917. func: (function() {
  2918. __GLOBAL__sub_I_PhysicsScene_cpp();
  2919. })
  2920. }, {
  2921. func: (function() {
  2922. __GLOBAL__sub_I_PhysicsBindings_gen_cpp();
  2923. })
  2924. }, {
  2925. func: (function() {
  2926. ___cxx_global_var_init_8_7080();
  2927. })
  2928. }, {
  2929. func: (function() {
  2930. ___cxx_global_var_init_11();
  2931. })
  2932. }, {
  2933. func: (function() {
  2934. __GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp();
  2935. })
  2936. }, {
  2937. func: (function() {
  2938. __GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp();
  2939. })
  2940. }, {
  2941. func: (function() {
  2942. ___cxx_global_var_init_4_7142();
  2943. })
  2944. }, {
  2945. func: (function() {
  2946. __GLOBAL__sub_I_SpriteShapeBindings_gen_cpp();
  2947. })
  2948. }, {
  2949. func: (function() {
  2950. ___cxx_global_var_init_1_7199();
  2951. })
  2952. }, {
  2953. func: (function() {
  2954. __GLOBAL__sub_I_SubsystemsScriptingClasses_cpp();
  2955. })
  2956. }, {
  2957. func: (function() {
  2958. ___cxx_global_var_init_28_7239();
  2959. })
  2960. }, {
  2961. func: (function() {
  2962. ___cxx_global_var_init_29_7240();
  2963. })
  2964. }, {
  2965. func: (function() {
  2966. __GLOBAL__sub_I_Modules_Subsystems_0_cpp();
  2967. })
  2968. }, {
  2969. func: (function() {
  2970. __GLOBAL__sub_I_TerrainScriptingClasses_cpp();
  2971. })
  2972. }, {
  2973. func: (function() {
  2974. __GLOBAL__sub_I_Modules_Terrain_Public_0_cpp();
  2975. })
  2976. }, {
  2977. func: (function() {
  2978. __GLOBAL__sub_I_Modules_Terrain_Public_1_cpp();
  2979. })
  2980. }, {
  2981. func: (function() {
  2982. ___cxx_global_var_init_110();
  2983. })
  2984. }, {
  2985. func: (function() {
  2986. ___cxx_global_var_init_111();
  2987. })
  2988. }, {
  2989. func: (function() {
  2990. __GLOBAL__sub_I_Modules_Terrain_Public_2_cpp();
  2991. })
  2992. }, {
  2993. func: (function() {
  2994. __GLOBAL__sub_I_Modules_Terrain_Public_3_cpp();
  2995. })
  2996. }, {
  2997. func: (function() {
  2998. __GLOBAL__sub_I_Modules_Terrain_VR_0_cpp();
  2999. })
  3000. }, {
  3001. func: (function() {
  3002. __GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp();
  3003. })
  3004. }, {
  3005. func: (function() {
  3006. __GLOBAL__sub_I_TextCoreScriptingClasses_cpp();
  3007. })
  3008. }, {
  3009. func: (function() {
  3010. __GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp();
  3011. })
  3012. }, {
  3013. func: (function() {
  3014. __GLOBAL__sub_I_TextRenderingScriptingClasses_cpp();
  3015. })
  3016. }, {
  3017. func: (function() {
  3018. ___cxx_global_var_init_35_7727();
  3019. })
  3020. }, {
  3021. func: (function() {
  3022. ___cxx_global_var_init_36_7728();
  3023. })
  3024. }, {
  3025. func: (function() {
  3026. __GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp();
  3027. })
  3028. }, {
  3029. func: (function() {
  3030. __GLOBAL__sub_I_TilemapScriptingClasses_cpp();
  3031. })
  3032. }, {
  3033. func: (function() {
  3034. __GLOBAL__sub_I_Modules_Tilemap_0_cpp();
  3035. })
  3036. }, {
  3037. func: (function() {
  3038. ___cxx_global_var_init_44_7946();
  3039. })
  3040. }, {
  3041. func: (function() {
  3042. __GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp();
  3043. })
  3044. }, {
  3045. func: (function() {
  3046. __GLOBAL__sub_I_TLSModule_cpp();
  3047. })
  3048. }, {
  3049. func: (function() {
  3050. __GLOBAL__sub_I_UIElementsNativeScriptingClasses_cpp();
  3051. })
  3052. }, {
  3053. func: (function() {
  3054. __GLOBAL__sub_I_External_Yoga_Yoga_0_cpp();
  3055. })
  3056. }, {
  3057. func: (function() {
  3058. ___cxx_global_var_init_10_8165();
  3059. })
  3060. }, {
  3061. func: (function() {
  3062. ___cxx_global_var_init_11_8166();
  3063. })
  3064. }, {
  3065. func: (function() {
  3066. ___cxx_global_var_init_12_8167();
  3067. })
  3068. }, {
  3069. func: (function() {
  3070. __GLOBAL__sub_I_Modules_UIElementsNative_0_cpp();
  3071. })
  3072. }, {
  3073. func: (function() {
  3074. __GLOBAL__sub_I_UIScriptingClasses_cpp();
  3075. })
  3076. }, {
  3077. func: (function() {
  3078. ___cxx_global_var_init_46_8335();
  3079. })
  3080. }, {
  3081. func: (function() {
  3082. ___cxx_global_var_init_47_8336();
  3083. })
  3084. }, {
  3085. func: (function() {
  3086. ___cxx_global_var_init_48_8337();
  3087. })
  3088. }, {
  3089. func: (function() {
  3090. ___cxx_global_var_init_49_8338();
  3091. })
  3092. }, {
  3093. func: (function() {
  3094. ___cxx_global_var_init_50();
  3095. })
  3096. }, {
  3097. func: (function() {
  3098. ___cxx_global_var_init_51();
  3099. })
  3100. }, {
  3101. func: (function() {
  3102. ___cxx_global_var_init_52();
  3103. })
  3104. }, {
  3105. func: (function() {
  3106. ___cxx_global_var_init_53_8339();
  3107. })
  3108. }, {
  3109. func: (function() {
  3110. __GLOBAL__sub_I_Modules_UI_0_cpp();
  3111. })
  3112. }, {
  3113. func: (function() {
  3114. __GLOBAL__sub_I_Modules_UI_1_cpp();
  3115. })
  3116. }, {
  3117. func: (function() {
  3118. __GLOBAL__sub_I_Modules_UI_2_cpp();
  3119. })
  3120. }, {
  3121. func: (function() {
  3122. __GLOBAL__sub_I_umbra_cpp();
  3123. })
  3124. }, {
  3125. func: (function() {
  3126. __GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp();
  3127. })
  3128. }, {
  3129. func: (function() {
  3130. ___cxx_global_var_init_67();
  3131. })
  3132. }, {
  3133. func: (function() {
  3134. __GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp();
  3135. })
  3136. }, {
  3137. func: (function() {
  3138. ___cxx_global_var_init_8552();
  3139. })
  3140. }, {
  3141. func: (function() {
  3142. __GLOBAL__sub_I_UnityAdsSettings_cpp();
  3143. })
  3144. }, {
  3145. func: (function() {
  3146. __GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp();
  3147. })
  3148. }, {
  3149. func: (function() {
  3150. __GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp();
  3151. })
  3152. }, {
  3153. func: (function() {
  3154. __GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp();
  3155. })
  3156. }, {
  3157. func: (function() {
  3158. __GLOBAL__sub_I_Modules_Vehicles_0_cpp();
  3159. })
  3160. }, {
  3161. func: (function() {
  3162. __GLOBAL__sub_I_VFXScriptingClasses_cpp();
  3163. })
  3164. }, {
  3165. func: (function() {
  3166. ___cxx_global_var_init_78();
  3167. })
  3168. }, {
  3169. func: (function() {
  3170. __GLOBAL__sub_I_Modules_VFX_Public_0_cpp();
  3171. })
  3172. }, {
  3173. func: (function() {
  3174. __GLOBAL__sub_I_Modules_VFX_Public_1_cpp();
  3175. })
  3176. }, {
  3177. func: (function() {
  3178. __GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp();
  3179. })
  3180. }, {
  3181. func: (function() {
  3182. __GLOBAL__sub_I_VisualEffectAsset_cpp();
  3183. })
  3184. }, {
  3185. func: (function() {
  3186. __GLOBAL__sub_I_VideoScriptingClasses_cpp();
  3187. })
  3188. }, {
  3189. func: (function() {
  3190. __GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp();
  3191. })
  3192. }, {
  3193. func: (function() {
  3194. ___cxx_global_var_init_1_9527();
  3195. })
  3196. }, {
  3197. func: (function() {
  3198. ___cxx_global_var_init_2_9528();
  3199. })
  3200. }, {
  3201. func: (function() {
  3202. __GLOBAL__sub_I_Modules_Video_Public_0_cpp();
  3203. })
  3204. }, {
  3205. func: (function() {
  3206. __GLOBAL__sub_I_VideoMediaOutput_cpp();
  3207. })
  3208. }, {
  3209. func: (function() {
  3210. __GLOBAL__sub_I_VideoYUV420Convert_cpp();
  3211. })
  3212. }, {
  3213. func: (function() {
  3214. __GLOBAL__sub_I_VRScriptingClasses_cpp();
  3215. })
  3216. }, {
  3217. func: (function() {
  3218. ___cxx_global_var_init_54();
  3219. })
  3220. }, {
  3221. func: (function() {
  3222. ___cxx_global_var_init_55_9709();
  3223. })
  3224. }, {
  3225. func: (function() {
  3226. ___cxx_global_var_init_56();
  3227. })
  3228. }, {
  3229. func: (function() {
  3230. ___cxx_global_var_init_57();
  3231. })
  3232. }, {
  3233. func: (function() {
  3234. ___cxx_global_var_init_58_9710();
  3235. })
  3236. }, {
  3237. func: (function() {
  3238. ___cxx_global_var_init_59_9711();
  3239. })
  3240. }, {
  3241. func: (function() {
  3242. ___cxx_global_var_init_60_9712();
  3243. })
  3244. }, {
  3245. func: (function() {
  3246. ___cxx_global_var_init_61_9713();
  3247. })
  3248. }, {
  3249. func: (function() {
  3250. __GLOBAL__sub_I_Modules_VR_0_cpp();
  3251. })
  3252. }, {
  3253. func: (function() {
  3254. __GLOBAL__sub_I_Modules_VR_1_cpp();
  3255. })
  3256. }, {
  3257. func: (function() {
  3258. __GLOBAL__sub_I_PluginInterfaceVR_cpp();
  3259. })
  3260. }, {
  3261. func: (function() {
  3262. __GLOBAL__sub_I_Wind_cpp();
  3263. })
  3264. }, {
  3265. func: (function() {
  3266. __GLOBAL__sub_I_XRScriptingClasses_cpp();
  3267. })
  3268. }, {
  3269. func: (function() {
  3270. __GLOBAL__sub_I_Modules_XR_0_cpp();
  3271. })
  3272. }, {
  3273. func: (function() {
  3274. ___cxx_global_var_init_2_9864();
  3275. })
  3276. }, {
  3277. func: (function() {
  3278. __GLOBAL__sub_I_XRAudio_cpp();
  3279. })
  3280. }, {
  3281. func: (function() {
  3282. ___cxx_global_var_init_3_9865();
  3283. })
  3284. }, {
  3285. func: (function() {
  3286. __GLOBAL__sub_I_XRPreInit_cpp();
  3287. })
  3288. }, {
  3289. func: (function() {
  3290. ___cxx_global_var_init_3_27();
  3291. })
  3292. }, {
  3293. func: (function() {
  3294. ___cxx_global_var_init_4_9866();
  3295. })
  3296. }, {
  3297. func: (function() {
  3298. ___cxx_global_var_init_5_9867();
  3299. })
  3300. }, {
  3301. func: (function() {
  3302. ___cxx_global_var_init_6_9868();
  3303. })
  3304. }, {
  3305. func: (function() {
  3306. ___cxx_global_var_init_7_9869();
  3307. })
  3308. }, {
  3309. func: (function() {
  3310. ___cxx_global_var_init_8_9870();
  3311. })
  3312. }, {
  3313. func: (function() {
  3314. ___cxx_global_var_init_9_9871();
  3315. })
  3316. }, {
  3317. func: (function() {
  3318. ___cxx_global_var_init_10_9872();
  3319. })
  3320. }, {
  3321. func: (function() {
  3322. __GLOBAL__sub_I_Modules_XR_Public_0_cpp();
  3323. })
  3324. }, {
  3325. func: (function() {
  3326. __GLOBAL__sub_I_Modules_XR_Stats_0_cpp();
  3327. })
  3328. }, {
  3329. func: (function() {
  3330. __GLOBAL__sub_I_Modules_XR_Subsystems_Display_0_cpp();
  3331. })
  3332. }, {
  3333. func: (function() {
  3334. __GLOBAL__sub_I_Modules_XR_Subsystems_Display_1_cpp();
  3335. })
  3336. }, {
  3337. func: (function() {
  3338. __GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_0_cpp();
  3339. })
  3340. }, {
  3341. func: (function() {
  3342. __GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp();
  3343. })
  3344. }, {
  3345. func: (function() {
  3346. __GLOBAL__sub_I_Modules_XR_Subsystems_Meshing_0_cpp();
  3347. })
  3348. }, {
  3349. func: (function() {
  3350. __GLOBAL__sub_I_Modules_XR_Tracing_0_cpp();
  3351. })
  3352. }, {
  3353. func: (function() {
  3354. __GLOBAL__sub_I_XRWindowsLocatableCamera_cpp();
  3355. })
  3356. }, {
  3357. func: (function() {
  3358. __GLOBAL__sub_I_External_il2cpp_builds_external_baselib_Platforms_WebGL_Source_0_cpp();
  3359. })
  3360. }, {
  3361. func: (function() {
  3362. __GLOBAL__sub_I_Lump_libil2cpp_os_cpp();
  3363. })
  3364. }, {
  3365. func: (function() {
  3366. __GLOBAL__sub_I_Lump_libil2cpp_icalls_cpp();
  3367. })
  3368. }, {
  3369. func: (function() {
  3370. __GLOBAL__sub_I_Lump_libil2cpp_vm_cpp();
  3371. })
  3372. }, {
  3373. func: (function() {
  3374. __GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp();
  3375. })
  3376. }, {
  3377. func: (function() {
  3378. __GLOBAL__sub_I_Lump_libil2cpp_utils_cpp();
  3379. })
  3380. }, {
  3381. func: (function() {
  3382. __GLOBAL__sub_I_Lump_libil2cpp_vm_utils_cpp();
  3383. })
  3384. }, {
  3385. func: (function() {
  3386. __GLOBAL__sub_I_Lump_libil2cpp_mono_cpp();
  3387. })
  3388. }, {
  3389. func: (function() {
  3390. __GLOBAL__sub_I_Lump_libil2cpp_gc_cpp();
  3391. })
  3392. }, {
  3393. func: (function() {
  3394. ___emscripten_environ_constructor();
  3395. })
  3396. });
  3397. var STATIC_BUMP = 2439408;
  3398. Module["STATIC_BASE"] = STATIC_BASE;
  3399. Module["STATIC_BUMP"] = STATIC_BUMP;
  3400. var tempDoublePtr = STATICTOP;
  3401. STATICTOP += 16;
  3402. assert(tempDoublePtr % 8 == 0);
  3403. function _CreateIFrame() {
  3404. window.location.href = "https://fangzhen.cocorobo.cn/blockly";
  3405. }
  3406. function _JS_Cursor_SetImage(ptr, length) {
  3407. var binary = "";
  3408. for (var i = 0; i < length; i++) binary += String.fromCharCode(HEAPU8[ptr + i]);
  3409. Module.canvas.style.cursor = "url(data:image/cur;base64," + btoa(binary) + "),default";
  3410. }
  3411. function _JS_Cursor_SetShow(show) {
  3412. Module.canvas.style.cursor = show ? "default" : "none";
  3413. }
  3414. function _JS_Eval_ClearInterval(id) {
  3415. window.clearInterval(id);
  3416. }
  3417. function _JS_Eval_SetInterval(func, arg, millis) {
  3418. Module["noExitRuntime"] = true;
  3419. function wrapper() {
  3420. getFuncWrapper(func, "vi")(arg);
  3421. }
  3422. return Browser.safeSetInterval(wrapper, millis);
  3423. }
  3424. var fs = {
  3425. numPendingSync: 0,
  3426. syncInternal: 1e3,
  3427. syncInProgress: false,
  3428. sync: (function(onlyPendingSync) {
  3429. if (onlyPendingSync) {
  3430. if (fs.numPendingSync == 0) return;
  3431. } else if (fs.syncInProgress) {
  3432. fs.numPendingSync++;
  3433. return;
  3434. }
  3435. fs.syncInProgress = true;
  3436. FS.syncfs(false, (function(err) {
  3437. fs.syncInProgress = false;
  3438. }));
  3439. fs.numPendingSync = 0;
  3440. })
  3441. };
  3442. function _JS_FileSystem_Initialize() {
  3443. Module.setInterval((function() {
  3444. fs.sync(true);
  3445. }), fs.syncInternal);
  3446. }
  3447. function _JS_FileSystem_Sync() {
  3448. fs.sync(false);
  3449. }
  3450. function _JS_Log_Dump(ptr, type) {
  3451. var str = Pointer_stringify(ptr);
  3452. if (typeof dump == "function") dump(str);
  3453. switch (type) {
  3454. case 0:
  3455. case 1:
  3456. case 4:
  3457. console.error(str);
  3458. return;
  3459. case 2:
  3460. console.warn(str);
  3461. return;
  3462. case 3:
  3463. case 5:
  3464. console.log(str);
  3465. return;
  3466. default:
  3467. console.error("Unknown console message type!");
  3468. console.error(str);
  3469. }
  3470. }
  3471. function _JS_Log_StackTrace(buffer, bufferSize) {
  3472. var trace = stackTrace();
  3473. if (buffer) stringToUTF8(trace, buffer, bufferSize);
  3474. return lengthBytesUTF8(trace);
  3475. }
  3476. function _JS_Profiler_InjectJobs() {
  3477. for (var jobname in Module["Jobs"]) {
  3478. var job = Module["Jobs"][jobname];
  3479. if (typeof job["endtime"] != "undefined") Module.ccall("InjectProfilerSample", null, [ "string", "number", "number" ], [ jobname, job.starttime, job.endtime ]);
  3480. }
  3481. }
  3482. var WEBAudio = {
  3483. audioInstanceIdCounter: 0,
  3484. audioInstances: {},
  3485. audioContext: null,
  3486. audioWebEnabled: 0
  3487. };
  3488. function _JS_Sound_Create_Channel(callback, userData) {
  3489. if (WEBAudio.audioWebEnabled == 0) return;
  3490. var channel = {
  3491. gain: WEBAudio.audioContext.createGain(),
  3492. panner: WEBAudio.audioContext.createPanner(),
  3493. threeD: false,
  3494. playBuffer: (function(startTime, buffer, startOffset) {
  3495. this.setup();
  3496. this.source.buffer = buffer;
  3497. var chan = this;
  3498. this.source.onended = (function() {
  3499. chan.disconnectSource();
  3500. if (callback) dynCall("vi", callback, [ userData ]);
  3501. });
  3502. this.source.start(startTime, startOffset);
  3503. this.source.playbackStartTime = startTime - startOffset / this.source.playbackRate.value;
  3504. }),
  3505. disconnectSource: (function() {
  3506. if (this.source && !this.source.isPausedMockNode) {
  3507. this.source.onended = null;
  3508. this.source.disconnect();
  3509. delete this.source;
  3510. }
  3511. }),
  3512. stop: (function(delay) {
  3513. if (channel.source && channel.source.buffer) {
  3514. try {
  3515. channel.source.stop(WEBAudio.audioContext.currentTime + delay);
  3516. } catch (e) {}
  3517. if (delay == 0) {
  3518. channel.disconnectSource();
  3519. }
  3520. }
  3521. }),
  3522. pause: (function() {
  3523. var s = this.source;
  3524. if (!s) return;
  3525. var pausedSource = {
  3526. isPausedMockNode: true,
  3527. loop: s.loop,
  3528. loopStart: s.loopStart,
  3529. loopEnd: s.loopEnd,
  3530. buffer: s.buffer,
  3531. playbackRate: s.playbackRate.value,
  3532. playbackPausedAtPosition: s.estimatePlaybackPosition(),
  3533. setPitch: (function(v) {
  3534. this.playbackRate = v;
  3535. })
  3536. };
  3537. this.stop(0);
  3538. this.disconnectSource();
  3539. this.source = pausedSource;
  3540. }),
  3541. resume: (function() {
  3542. var pausedSource = this.source;
  3543. if (!pausedSource || !pausedSource.isPausedMockNode) return;
  3544. delete this.source;
  3545. this.setup();
  3546. this.playBuffer(WEBAudio.audioContext.currentTime - Math.min(0, pausedSource.playbackPausedAtPosition), pausedSource.buffer, Math.max(0, pausedSource.playbackPausedAtPosition));
  3547. this.source.loop = pausedSource.loop;
  3548. this.source.loopStart = pausedSource.loopStart;
  3549. this.source.loopEnd = pausedSource.loopEnd;
  3550. this.source.setPitch(pausedSource.playbackRate);
  3551. }),
  3552. setup: (function() {
  3553. if (this.source && !this.source.isPausedMockNode) return;
  3554. this.source = WEBAudio.audioContext.createBufferSource();
  3555. this.source.estimatePlaybackPosition = (function() {
  3556. var t = (WEBAudio.audioContext.currentTime - this.playbackStartTime) * this.playbackRate.value;
  3557. if (this.loop && t >= this.loopStart) {
  3558. t = (t - this.loopStart) % (this.loopEnd - this.loopStart) + this.loopStart;
  3559. }
  3560. return t;
  3561. });
  3562. this.source.setPitch = (function(newPitch) {
  3563. var curPosition = this.estimatePlaybackPosition();
  3564. if (curPosition >= 0) {
  3565. this.playbackStartTime = WEBAudio.audioContext.currentTime - curPosition / newPitch;
  3566. }
  3567. this.playbackRate.value = newPitch;
  3568. });
  3569. this.setupPanning();
  3570. }),
  3571. setupPanning: (function() {
  3572. if (this.source.isPausedMockNode) return;
  3573. this.source.disconnect();
  3574. if (this.threeD) {
  3575. this.source.connect(this.panner);
  3576. this.panner.connect(this.gain);
  3577. } else {
  3578. this.panner.disconnect();
  3579. this.source.connect(this.gain);
  3580. }
  3581. })
  3582. };
  3583. channel.panner.rolloffFactor = 0;
  3584. channel.gain.connect(WEBAudio.audioContext.destination);
  3585. WEBAudio.audioInstances[++WEBAudio.audioInstanceIdCounter] = channel;
  3586. return WEBAudio.audioInstanceIdCounter;
  3587. }
  3588. function _JS_Sound_GetLength(bufferInstance) {
  3589. if (WEBAudio.audioWebEnabled == 0) return 0;
  3590. var sound = WEBAudio.audioInstances[bufferInstance];
  3591. var sampleRateRatio = 44100 / sound.buffer.sampleRate;
  3592. return sound.buffer.length * sampleRateRatio;
  3593. }
  3594. function _JS_Sound_GetLoadState(bufferInstance) {
  3595. if (WEBAudio.audioWebEnabled == 0) return 2;
  3596. var sound = WEBAudio.audioInstances[bufferInstance];
  3597. if (sound.error) return 2;
  3598. if (sound.buffer) return 0;
  3599. return 1;
  3600. }
  3601. function _JS_Sound_Init() {
  3602. try {
  3603. window.AudioContext = window.AudioContext || window.webkitAudioContext;
  3604. WEBAudio.audioContext = new AudioContext;
  3605. var tryToResumeAudioContext = (function() {
  3606. if (WEBAudio.audioContext.state === "suspended") WEBAudio.audioContext.resume(); else Module.clearInterval(resumeInterval);
  3607. });
  3608. var resumeInterval = Module.setInterval(tryToResumeAudioContext, 400);
  3609. WEBAudio.audioWebEnabled = 1;
  3610. } catch (e) {
  3611. alert("Web Audio API is not supported in this browser");
  3612. }
  3613. }
  3614. function _JS_Sound_Load(ptr, length) {
  3615. if (WEBAudio.audioWebEnabled == 0) return 0;
  3616. var sound = {
  3617. buffer: null,
  3618. error: false
  3619. };
  3620. WEBAudio.audioInstances[++WEBAudio.audioInstanceIdCounter] = sound;
  3621. var audioData = HEAPU8.buffer.slice(ptr, ptr + length);
  3622. WEBAudio.audioContext.decodeAudioData(audioData, (function(buffer) {
  3623. sound.buffer = buffer;
  3624. }), (function() {
  3625. sound.error = true;
  3626. console.log("Decode error.");
  3627. }));
  3628. return WEBAudio.audioInstanceIdCounter;
  3629. }
  3630. function _JS_Sound_Load_PCM(channels, length, sampleRate, ptr) {
  3631. if (WEBAudio.audioWebEnabled == 0) return 0;
  3632. var sound = {
  3633. buffer: WEBAudio.audioContext.createBuffer(channels, length, sampleRate),
  3634. error: false
  3635. };
  3636. for (var i = 0; i < channels; i++) {
  3637. var offs = (ptr >> 2) + length * i;
  3638. var buffer = sound.buffer;
  3639. var copyToChannel = buffer["copyToChannel"] || (function(source, channelNumber, startInChannel) {
  3640. var clipped = source.subarray(0, Math.min(source.length, this.length - (startInChannel | 0)));
  3641. this.getChannelData(channelNumber | 0).set(clipped, startInChannel | 0);
  3642. });
  3643. copyToChannel.apply(buffer, [ HEAPF32.subarray(offs, offs + length), i, 0 ]);
  3644. }
  3645. WEBAudio.audioInstances[++WEBAudio.audioInstanceIdCounter] = sound;
  3646. return WEBAudio.audioInstanceIdCounter;
  3647. }
  3648. function _JS_Sound_Play(bufferInstance, channelInstance, offset, delay) {
  3649. _JS_Sound_Stop(channelInstance, 0);
  3650. if (WEBAudio.audioWebEnabled == 0) return;
  3651. var sound = WEBAudio.audioInstances[bufferInstance];
  3652. var channel = WEBAudio.audioInstances[channelInstance];
  3653. if (sound.buffer) {
  3654. try {
  3655. channel.playBuffer(WEBAudio.audioContext.currentTime + delay, sound.buffer, offset);
  3656. } catch (e) {
  3657. console.error("playBuffer error. Exception: " + e);
  3658. }
  3659. } else console.log("Trying to play sound which is not loaded.");
  3660. }
  3661. function _JS_Sound_ReleaseInstance(instance) {
  3662. delete WEBAudio.audioInstances[instance];
  3663. }
  3664. function _JS_Sound_ResumeIfNeeded() {
  3665. if (WEBAudio.audioWebEnabled == 0) return;
  3666. if (WEBAudio.audioContext.state === "suspended") WEBAudio.audioContext.resume();
  3667. }
  3668. function _JS_Sound_Set3D(channelInstance, threeD) {
  3669. var channel = WEBAudio.audioInstances[channelInstance];
  3670. if (channel.threeD != threeD) {
  3671. channel.threeD = threeD;
  3672. if (!channel.source) {
  3673. channel.setup();
  3674. }
  3675. channel.setupPanning();
  3676. }
  3677. }
  3678. function _JS_Sound_SetListenerOrientation(x, y, z, xUp, yUp, zUp) {
  3679. if (WEBAudio.audioWebEnabled == 0) return;
  3680. if (WEBAudio.audioContext.listener.forwardX) {
  3681. WEBAudio.audioContext.listener.forwardX.setValueAtTime(-x, WEBAudio.audioContext.currentTime);
  3682. WEBAudio.audioContext.listener.forwardY.setValueAtTime(-y, WEBAudio.audioContext.currentTime);
  3683. WEBAudio.audioContext.listener.forwardZ.setValueAtTime(-z, WEBAudio.audioContext.currentTime);
  3684. WEBAudio.audioContext.listener.upX.setValueAtTime(xUp, WEBAudio.audioContext.currentTime);
  3685. WEBAudio.audioContext.listener.upY.setValueAtTime(yUp, WEBAudio.audioContext.currentTime);
  3686. WEBAudio.audioContext.listener.upZ.setValueAtTime(zUp, WEBAudio.audioContext.currentTime);
  3687. } else {
  3688. WEBAudio.audioContext.listener.setOrientation(-x, -y, -z, xUp, yUp, zUp);
  3689. }
  3690. }
  3691. function _JS_Sound_SetListenerPosition(x, y, z) {
  3692. if (WEBAudio.audioWebEnabled == 0) return;
  3693. if (WEBAudio.audioContext.listener.positionX) {
  3694. WEBAudio.audioContext.listener.positionX.setValueAtTime(x, WEBAudio.audioContext.currentTime);
  3695. WEBAudio.audioContext.listener.positionY.setValueAtTime(y, WEBAudio.audioContext.currentTime);
  3696. WEBAudio.audioContext.listener.positionZ.setValueAtTime(z, WEBAudio.audioContext.currentTime);
  3697. } else {
  3698. WEBAudio.audioContext.listener.setPosition(x, y, z);
  3699. }
  3700. }
  3701. function _JS_Sound_SetLoop(channelInstance, loop) {
  3702. if (WEBAudio.audioWebEnabled == 0) return;
  3703. var channel = WEBAudio.audioInstances[channelInstance];
  3704. if (!channel.source) {
  3705. channel.setup();
  3706. }
  3707. channel.source.loop = loop;
  3708. }
  3709. function _JS_Sound_SetLoopPoints(channelInstance, loopStart, loopEnd) {
  3710. if (WEBAudio.audioWebEnabled == 0) return;
  3711. var channel = WEBAudio.audioInstances[channelInstance];
  3712. if (!channel.source) {
  3713. channel.setup();
  3714. }
  3715. channel.source.loopStart = loopStart;
  3716. channel.source.loopEnd = loopEnd;
  3717. }
  3718. function _JS_Sound_SetPaused(channelInstance, paused) {
  3719. if (WEBAudio.audioWebEnabled == 0) return;
  3720. var channel = WEBAudio.audioInstances[channelInstance];
  3721. var channelCurrentlyPaused = !channel.source || channel.source.isPausedMockNode;
  3722. if (paused != channelCurrentlyPaused) {
  3723. if (paused) channel.pause(); else channel.resume();
  3724. }
  3725. }
  3726. function _JS_Sound_SetPitch(channelInstance, v) {
  3727. if (WEBAudio.audioWebEnabled == 0) return;
  3728. try {
  3729. WEBAudio.audioInstances[channelInstance].source.setPitch(v);
  3730. } catch (e) {
  3731. console.error("Invalid audio pitch " + v + " specified to WebAudio backend!");
  3732. }
  3733. }
  3734. function _JS_Sound_SetPosition(channelInstance, x, y, z) {
  3735. if (WEBAudio.audioWebEnabled == 0) return;
  3736. var channel = WEBAudio.audioInstances[channelInstance];
  3737. if (channel.x != x || channel.y != y || channel.z != z) {
  3738. channel.panner.setPosition(x, y, z);
  3739. channel.x = x;
  3740. channel.y = y;
  3741. channel.z = z;
  3742. }
  3743. }
  3744. function _JS_Sound_SetVolume(channelInstance, v) {
  3745. if (WEBAudio.audioWebEnabled == 0) return;
  3746. try {
  3747. WEBAudio.audioInstances[channelInstance].gain.gain.setValueAtTime(v, WEBAudio.audioContext.currentTime);
  3748. } catch (e) {
  3749. console.error("Invalid audio volume " + v + " specified to WebAudio backend!");
  3750. }
  3751. }
  3752. function _JS_Sound_Stop(channelInstance, delay) {
  3753. if (WEBAudio.audioWebEnabled == 0) return;
  3754. var channel = WEBAudio.audioInstances[channelInstance];
  3755. channel.stop(delay);
  3756. }
  3757. function _JS_SystemInfo_GetBrowserName(buffer, bufferSize) {
  3758. var browser = Module.SystemInfo.browser;
  3759. if (buffer) stringToUTF8(browser, buffer, bufferSize);
  3760. return lengthBytesUTF8(browser);
  3761. }
  3762. function _JS_SystemInfo_GetBrowserVersionString(buffer, bufferSize) {
  3763. var browserVer = Module.SystemInfo.browserVersion;
  3764. if (buffer) stringToUTF8(browserVer, buffer, bufferSize);
  3765. return lengthBytesUTF8(browserVer);
  3766. }
  3767. function _JS_SystemInfo_GetCanvasClientSize(domElementSelector, outWidth, outHeight) {
  3768. var selector = UTF8ToString(domElementSelector);
  3769. var canvas = selector == "#canvas" ? Module["canvas"] : document.querySelector(selector);
  3770. HEAPF64[outWidth >> 3] = canvas ? canvas.clientWidth : 0;
  3771. HEAPF64[outHeight >> 3] = canvas ? canvas.clientHeight : 0;
  3772. }
  3773. function _JS_SystemInfo_GetDocumentURL(buffer, bufferSize) {
  3774. if (buffer) stringToUTF8(document.URL, buffer, bufferSize);
  3775. return lengthBytesUTF8(document.URL);
  3776. }
  3777. function _JS_SystemInfo_GetGPUInfo(buffer, bufferSize) {
  3778. var gpuinfo = Module.SystemInfo.gpu;
  3779. if (buffer) stringToUTF8(gpuinfo, buffer, bufferSize);
  3780. return lengthBytesUTF8(gpuinfo);
  3781. }
  3782. function _JS_SystemInfo_GetLanguage(buffer, bufferSize) {
  3783. var language = Module.SystemInfo.language;
  3784. if (buffer) stringToUTF8(language, buffer, bufferSize);
  3785. return lengthBytesUTF8(language);
  3786. }
  3787. function _JS_SystemInfo_GetMatchWebGLToCanvasSize() {
  3788. return Module.matchWebGLToCanvasSize || Module.matchWebGLToCanvasSize === undefined;
  3789. }
  3790. function _JS_SystemInfo_GetMemory() {
  3791. return TOTAL_MEMORY / (1024 * 1024);
  3792. }
  3793. function _JS_SystemInfo_GetOS(buffer, bufferSize) {
  3794. var browser = Module.SystemInfo.os + " " + Module.SystemInfo.osVersion;
  3795. if (buffer) stringToUTF8(browser, buffer, bufferSize);
  3796. return lengthBytesUTF8(browser);
  3797. }
  3798. function _JS_SystemInfo_GetPreferredDevicePixelRatio() {
  3799. return Module.matchWebGLToCanvasSize == false ? 1 : Module.devicePixelRatio || window.devicePixelRatio || 1;
  3800. }
  3801. function _JS_SystemInfo_GetScreenSize(outWidth, outHeight) {
  3802. HEAPF64[outWidth >> 3] = Module.SystemInfo.width;
  3803. HEAPF64[outHeight >> 3] = Module.SystemInfo.height;
  3804. }
  3805. function _JS_SystemInfo_HasCursorLock() {
  3806. return Module.SystemInfo.hasCursorLock;
  3807. }
  3808. function _JS_SystemInfo_HasFullscreen() {
  3809. return Module.SystemInfo.hasFullscreen;
  3810. }
  3811. function _JS_SystemInfo_HasWebGL() {
  3812. return Module.SystemInfo.hasWebGL;
  3813. }
  3814. var wr = {
  3815. requestInstances: {},
  3816. nextRequestId: 1
  3817. };
  3818. function _JS_WebRequest_Abort(request) {
  3819. wr.requestInstances[request].abort();
  3820. }
  3821. function _JS_WebRequest_Create(url, method) {
  3822. var _url = Pointer_stringify(url);
  3823. var _method = Pointer_stringify(method);
  3824. var http = Module.companyName && Module.productName && Module.XMLHttpRequest ? new Module.XMLHttpRequest({
  3825. companyName: Module.companyName,
  3826. productName: Module.productName,
  3827. cacheControl: Module.cacheControl(_url)
  3828. }) : new XMLHttpRequest;
  3829. http.open(_method, _url, true);
  3830. http.responseType = "arraybuffer";
  3831. wr.requestInstances[wr.nextRequestId] = http;
  3832. return wr.nextRequestId++;
  3833. }
  3834. function _JS_WebRequest_GetResponseHeaders(request, buffer, bufferSize) {
  3835. var headers = wr.requestInstances[request].getAllResponseHeaders();
  3836. if (buffer) stringToUTF8(headers, buffer, bufferSize);
  3837. return lengthBytesUTF8(headers);
  3838. }
  3839. function _JS_WebRequest_Release(request) {
  3840. var http = wr.requestInstances[request];
  3841. http.onload = null;
  3842. http.onerror = null;
  3843. http.ontimeout = null;
  3844. http.onabort = null;
  3845. delete http;
  3846. wr.requestInstances[request] = null;
  3847. }
  3848. function _JS_WebRequest_Send(request, ptr, length) {
  3849. var http = wr.requestInstances[request];
  3850. try {
  3851. if (length > 0) {
  3852. var postData = HEAPU8.subarray(ptr, ptr + length);
  3853. http.send(postData);
  3854. } else http.send();
  3855. } catch (e) {
  3856. console.error(e.name + ": " + e.message);
  3857. }
  3858. }
  3859. function _JS_WebRequest_SetProgressHandler(request, arg, onprogress) {
  3860. var http = wr.requestInstances[request];
  3861. http.onprogress = function http_onprogress(e) {
  3862. if (onprogress) {
  3863. if (e.lengthComputable) dynCall("viii", onprogress, [ arg, e.loaded, e.total ]);
  3864. }
  3865. };
  3866. }
  3867. function _JS_WebRequest_SetRequestHeader(request, header, value) {
  3868. var _header = Pointer_stringify(header);
  3869. var _value = Pointer_stringify(value);
  3870. wr.requestInstances[request].setRequestHeader(_header, _value);
  3871. }
  3872. function _JS_WebRequest_SetResponseHandler(request, arg, onresponse) {
  3873. var http = wr.requestInstances[request];
  3874. http.onload = function http_onload(e) {
  3875. if (onresponse) {
  3876. var kWebRequestOK = 0;
  3877. var byteArray = new Uint8Array(http.response);
  3878. if (byteArray.length != 0) {
  3879. var buffer = _malloc(byteArray.length);
  3880. HEAPU8.set(byteArray, buffer);
  3881. dynCall("viiiiii", onresponse, [ arg, http.status, buffer, byteArray.length, 0, kWebRequestOK ]);
  3882. } else {
  3883. dynCall("viiiiii", onresponse, [ arg, http.status, 0, 0, 0, kWebRequestOK ]);
  3884. }
  3885. }
  3886. };
  3887. function HandleError(err, code) {
  3888. if (onresponse) {
  3889. var len = lengthBytesUTF8(err) + 1;
  3890. var buffer = _malloc(len);
  3891. stringToUTF8(err, buffer, len);
  3892. dynCall("viiiiii", onresponse, [ arg, http.status, 0, 0, buffer, code ]);
  3893. _free(buffer);
  3894. }
  3895. }
  3896. http.onerror = function http_onerror(e) {
  3897. var kWebErrorUnknown = 2;
  3898. HandleError("Unknown error.", kWebErrorUnknown);
  3899. };
  3900. http.ontimeout = function http_onerror(e) {
  3901. var kWebErrorTimeout = 14;
  3902. HandleError("Connection timed out.", kWebErrorTimeout);
  3903. };
  3904. http.onabort = function http_onerror(e) {
  3905. var kWebErrorAborted = 17;
  3906. HandleError("Aborted.", kWebErrorAborted);
  3907. };
  3908. }
  3909. function _JS_WebRequest_SetTimeout(request, timeout) {
  3910. wr.requestInstances[request].timeout = timeout;
  3911. }
  3912. function ___atomic_compare_exchange_8(ptr, expected, desiredl, desiredh, weak, success_memmodel, failure_memmodel) {
  3913. var pl = HEAP32[ptr >> 2];
  3914. var ph = HEAP32[ptr + 4 >> 2];
  3915. var el = HEAP32[expected >> 2];
  3916. var eh = HEAP32[expected + 4 >> 2];
  3917. if (pl === el && ph === eh) {
  3918. HEAP32[ptr >> 2] = desiredl;
  3919. HEAP32[ptr + 4 >> 2] = desiredh;
  3920. return 1;
  3921. } else {
  3922. HEAP32[expected >> 2] = pl;
  3923. HEAP32[expected + 4 >> 2] = ph;
  3924. return 0;
  3925. }
  3926. }
  3927. function ___atomic_fetch_add_8(ptr, vall, valh, memmodel) {
  3928. var l = HEAP32[ptr >> 2];
  3929. var h = HEAP32[ptr + 4 >> 2];
  3930. HEAP32[ptr >> 2] = _i64Add(l, h, vall, valh);
  3931. HEAP32[ptr + 4 >> 2] = getTempRet0();
  3932. return (setTempRet0(h), l) | 0;
  3933. }
  3934. var ENV = {};
  3935. function ___buildEnvironment(environ) {
  3936. var MAX_ENV_VALUES = 64;
  3937. var TOTAL_ENV_SIZE = 1024;
  3938. var poolPtr;
  3939. var envPtr;
  3940. if (!___buildEnvironment.called) {
  3941. ___buildEnvironment.called = true;
  3942. ENV["USER"] = ENV["LOGNAME"] = "web_user";
  3943. ENV["PATH"] = "/";
  3944. ENV["PWD"] = "/";
  3945. ENV["HOME"] = "/home/web_user";
  3946. ENV["LANG"] = "C.UTF-8";
  3947. ENV["_"] = Module["thisProgram"];
  3948. poolPtr = getMemory(TOTAL_ENV_SIZE);
  3949. envPtr = getMemory(MAX_ENV_VALUES * 4);
  3950. HEAP32[envPtr >> 2] = poolPtr;
  3951. HEAP32[environ >> 2] = envPtr;
  3952. } else {
  3953. envPtr = HEAP32[environ >> 2];
  3954. poolPtr = HEAP32[envPtr >> 2];
  3955. }
  3956. var strings = [];
  3957. var totalSize = 0;
  3958. for (var key in ENV) {
  3959. if (typeof ENV[key] === "string") {
  3960. var line = key + "=" + ENV[key];
  3961. strings.push(line);
  3962. totalSize += line.length;
  3963. }
  3964. }
  3965. if (totalSize > TOTAL_ENV_SIZE) {
  3966. throw new Error("Environment size exceeded TOTAL_ENV_SIZE!");
  3967. }
  3968. var ptrSize = 4;
  3969. for (var i = 0; i < strings.length; i++) {
  3970. var line = strings[i];
  3971. writeAsciiToMemory(line, poolPtr);
  3972. HEAP32[envPtr + i * ptrSize >> 2] = poolPtr;
  3973. poolPtr += line.length + 1;
  3974. }
  3975. HEAP32[envPtr + strings.length * ptrSize >> 2] = 0;
  3976. }
  3977. function ___cxa_allocate_exception(size) {
  3978. return _malloc(size);
  3979. }
  3980. function __ZSt18uncaught_exceptionv() {
  3981. return !!__ZSt18uncaught_exceptionv.uncaught_exception;
  3982. }
  3983. var EXCEPTIONS = {
  3984. last: 0,
  3985. caught: [],
  3986. infos: {},
  3987. deAdjust: (function(adjusted) {
  3988. if (!adjusted || EXCEPTIONS.infos[adjusted]) return adjusted;
  3989. for (var key in EXCEPTIONS.infos) {
  3990. var ptr = +key;
  3991. var info = EXCEPTIONS.infos[ptr];
  3992. if (info.adjusted === adjusted) {
  3993. return ptr;
  3994. }
  3995. }
  3996. return adjusted;
  3997. }),
  3998. addRef: (function(ptr) {
  3999. if (!ptr) return;
  4000. var info = EXCEPTIONS.infos[ptr];
  4001. info.refcount++;
  4002. }),
  4003. decRef: (function(ptr) {
  4004. if (!ptr) return;
  4005. var info = EXCEPTIONS.infos[ptr];
  4006. assert(info.refcount > 0);
  4007. info.refcount--;
  4008. if (info.refcount === 0 && !info.rethrown) {
  4009. if (info.destructor) {
  4010. Module["dynCall_vi"](info.destructor, ptr);
  4011. }
  4012. delete EXCEPTIONS.infos[ptr];
  4013. ___cxa_free_exception(ptr);
  4014. }
  4015. }),
  4016. clearRef: (function(ptr) {
  4017. if (!ptr) return;
  4018. var info = EXCEPTIONS.infos[ptr];
  4019. info.refcount = 0;
  4020. })
  4021. };
  4022. function ___cxa_begin_catch(ptr) {
  4023. var info = EXCEPTIONS.infos[ptr];
  4024. if (info && !info.caught) {
  4025. info.caught = true;
  4026. __ZSt18uncaught_exceptionv.uncaught_exception--;
  4027. }
  4028. if (info) info.rethrown = false;
  4029. EXCEPTIONS.caught.push(ptr);
  4030. EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));
  4031. return ptr;
  4032. }
  4033. function ___cxa_pure_virtual() {
  4034. ABORT = true;
  4035. throw "Pure virtual function called!";
  4036. }
  4037. function ___resumeException(ptr) {
  4038. if (!EXCEPTIONS.last) {
  4039. EXCEPTIONS.last = ptr;
  4040. }
  4041. throw ptr + " - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.";
  4042. }
  4043. function ___cxa_find_matching_catch() {
  4044. var thrown = EXCEPTIONS.last;
  4045. if (!thrown) {
  4046. return (setTempRet0(0), 0) | 0;
  4047. }
  4048. var info = EXCEPTIONS.infos[thrown];
  4049. var throwntype = info.type;
  4050. if (!throwntype) {
  4051. return (setTempRet0(0), thrown) | 0;
  4052. }
  4053. var typeArray = Array.prototype.slice.call(arguments);
  4054. var pointer = Module["___cxa_is_pointer_type"](throwntype);
  4055. if (!___cxa_find_matching_catch.buffer) ___cxa_find_matching_catch.buffer = _malloc(4);
  4056. HEAP32[___cxa_find_matching_catch.buffer >> 2] = thrown;
  4057. thrown = ___cxa_find_matching_catch.buffer;
  4058. for (var i = 0; i < typeArray.length; i++) {
  4059. if (typeArray[i] && Module["___cxa_can_catch"](typeArray[i], throwntype, thrown)) {
  4060. thrown = HEAP32[thrown >> 2];
  4061. info.adjusted = thrown;
  4062. return (setTempRet0(typeArray[i]), thrown) | 0;
  4063. }
  4064. }
  4065. thrown = HEAP32[thrown >> 2];
  4066. return (setTempRet0(throwntype), thrown) | 0;
  4067. }
  4068. function ___cxa_throw(ptr, type, destructor) {
  4069. EXCEPTIONS.infos[ptr] = {
  4070. ptr: ptr,
  4071. adjusted: ptr,
  4072. type: type,
  4073. destructor: destructor,
  4074. refcount: 0,
  4075. caught: false,
  4076. rethrown: false
  4077. };
  4078. EXCEPTIONS.last = ptr;
  4079. if (!("uncaught_exception" in __ZSt18uncaught_exceptionv)) {
  4080. __ZSt18uncaught_exceptionv.uncaught_exception = 1;
  4081. } else {
  4082. __ZSt18uncaught_exceptionv.uncaught_exception++;
  4083. }
  4084. throw ptr + " - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.";
  4085. }
  4086. function ___gxx_personality_v0() {}
  4087. function ___lock() {}
  4088. var ERRNO_CODES = {
  4089. EPERM: 1,
  4090. ENOENT: 2,
  4091. ESRCH: 3,
  4092. EINTR: 4,
  4093. EIO: 5,
  4094. ENXIO: 6,
  4095. E2BIG: 7,
  4096. ENOEXEC: 8,
  4097. EBADF: 9,
  4098. ECHILD: 10,
  4099. EAGAIN: 11,
  4100. EWOULDBLOCK: 11,
  4101. ENOMEM: 12,
  4102. EACCES: 13,
  4103. EFAULT: 14,
  4104. ENOTBLK: 15,
  4105. EBUSY: 16,
  4106. EEXIST: 17,
  4107. EXDEV: 18,
  4108. ENODEV: 19,
  4109. ENOTDIR: 20,
  4110. EISDIR: 21,
  4111. EINVAL: 22,
  4112. ENFILE: 23,
  4113. EMFILE: 24,
  4114. ENOTTY: 25,
  4115. ETXTBSY: 26,
  4116. EFBIG: 27,
  4117. ENOSPC: 28,
  4118. ESPIPE: 29,
  4119. EROFS: 30,
  4120. EMLINK: 31,
  4121. EPIPE: 32,
  4122. EDOM: 33,
  4123. ERANGE: 34,
  4124. ENOMSG: 42,
  4125. EIDRM: 43,
  4126. ECHRNG: 44,
  4127. EL2NSYNC: 45,
  4128. EL3HLT: 46,
  4129. EL3RST: 47,
  4130. ELNRNG: 48,
  4131. EUNATCH: 49,
  4132. ENOCSI: 50,
  4133. EL2HLT: 51,
  4134. EDEADLK: 35,
  4135. ENOLCK: 37,
  4136. EBADE: 52,
  4137. EBADR: 53,
  4138. EXFULL: 54,
  4139. ENOANO: 55,
  4140. EBADRQC: 56,
  4141. EBADSLT: 57,
  4142. EDEADLOCK: 35,
  4143. EBFONT: 59,
  4144. ENOSTR: 60,
  4145. ENODATA: 61,
  4146. ETIME: 62,
  4147. ENOSR: 63,
  4148. ENONET: 64,
  4149. ENOPKG: 65,
  4150. EREMOTE: 66,
  4151. ENOLINK: 67,
  4152. EADV: 68,
  4153. ESRMNT: 69,
  4154. ECOMM: 70,
  4155. EPROTO: 71,
  4156. EMULTIHOP: 72,
  4157. EDOTDOT: 73,
  4158. EBADMSG: 74,
  4159. ENOTUNIQ: 76,
  4160. EBADFD: 77,
  4161. EREMCHG: 78,
  4162. ELIBACC: 79,
  4163. ELIBBAD: 80,
  4164. ELIBSCN: 81,
  4165. ELIBMAX: 82,
  4166. ELIBEXEC: 83,
  4167. ENOSYS: 38,
  4168. ENOTEMPTY: 39,
  4169. ENAMETOOLONG: 36,
  4170. ELOOP: 40,
  4171. EOPNOTSUPP: 95,
  4172. EPFNOSUPPORT: 96,
  4173. ECONNRESET: 104,
  4174. ENOBUFS: 105,
  4175. EAFNOSUPPORT: 97,
  4176. EPROTOTYPE: 91,
  4177. ENOTSOCK: 88,
  4178. ENOPROTOOPT: 92,
  4179. ESHUTDOWN: 108,
  4180. ECONNREFUSED: 111,
  4181. EADDRINUSE: 98,
  4182. ECONNABORTED: 103,
  4183. ENETUNREACH: 101,
  4184. ENETDOWN: 100,
  4185. ETIMEDOUT: 110,
  4186. EHOSTDOWN: 112,
  4187. EHOSTUNREACH: 113,
  4188. EINPROGRESS: 115,
  4189. EALREADY: 114,
  4190. EDESTADDRREQ: 89,
  4191. EMSGSIZE: 90,
  4192. EPROTONOSUPPORT: 93,
  4193. ESOCKTNOSUPPORT: 94,
  4194. EADDRNOTAVAIL: 99,
  4195. ENETRESET: 102,
  4196. EISCONN: 106,
  4197. ENOTCONN: 107,
  4198. ETOOMANYREFS: 109,
  4199. EUSERS: 87,
  4200. EDQUOT: 122,
  4201. ESTALE: 116,
  4202. ENOTSUP: 95,
  4203. ENOMEDIUM: 123,
  4204. EILSEQ: 84,
  4205. EOVERFLOW: 75,
  4206. ECANCELED: 125,
  4207. ENOTRECOVERABLE: 131,
  4208. EOWNERDEAD: 130,
  4209. ESTRPIPE: 86
  4210. };
  4211. function ___setErrNo(value) {
  4212. if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; else err("failed to set errno from JS");
  4213. return value;
  4214. }
  4215. function ___map_file(pathname, size) {
  4216. ___setErrNo(ERRNO_CODES.EPERM);
  4217. return -1;
  4218. }
  4219. var ERRNO_MESSAGES = {
  4220. 0: "Success",
  4221. 1: "Not super-user",
  4222. 2: "No such file or directory",
  4223. 3: "No such process",
  4224. 4: "Interrupted system call",
  4225. 5: "I/O error",
  4226. 6: "No such device or address",
  4227. 7: "Arg list too long",
  4228. 8: "Exec format error",
  4229. 9: "Bad file number",
  4230. 10: "No children",
  4231. 11: "No more processes",
  4232. 12: "Not enough core",
  4233. 13: "Permission denied",
  4234. 14: "Bad address",
  4235. 15: "Block device required",
  4236. 16: "Mount device busy",
  4237. 17: "File exists",
  4238. 18: "Cross-device link",
  4239. 19: "No such device",
  4240. 20: "Not a directory",
  4241. 21: "Is a directory",
  4242. 22: "Invalid argument",
  4243. 23: "Too many open files in system",
  4244. 24: "Too many open files",
  4245. 25: "Not a typewriter",
  4246. 26: "Text file busy",
  4247. 27: "File too large",
  4248. 28: "No space left on device",
  4249. 29: "Illegal seek",
  4250. 30: "Read only file system",
  4251. 31: "Too many links",
  4252. 32: "Broken pipe",
  4253. 33: "Math arg out of domain of func",
  4254. 34: "Math result not representable",
  4255. 35: "File locking deadlock error",
  4256. 36: "File or path name too long",
  4257. 37: "No record locks available",
  4258. 38: "Function not implemented",
  4259. 39: "Directory not empty",
  4260. 40: "Too many symbolic links",
  4261. 42: "No message of desired type",
  4262. 43: "Identifier removed",
  4263. 44: "Channel number out of range",
  4264. 45: "Level 2 not synchronized",
  4265. 46: "Level 3 halted",
  4266. 47: "Level 3 reset",
  4267. 48: "Link number out of range",
  4268. 49: "Protocol driver not attached",
  4269. 50: "No CSI structure available",
  4270. 51: "Level 2 halted",
  4271. 52: "Invalid exchange",
  4272. 53: "Invalid request descriptor",
  4273. 54: "Exchange full",
  4274. 55: "No anode",
  4275. 56: "Invalid request code",
  4276. 57: "Invalid slot",
  4277. 59: "Bad font file fmt",
  4278. 60: "Device not a stream",
  4279. 61: "No data (for no delay io)",
  4280. 62: "Timer expired",
  4281. 63: "Out of streams resources",
  4282. 64: "Machine is not on the network",
  4283. 65: "Package not installed",
  4284. 66: "The object is remote",
  4285. 67: "The link has been severed",
  4286. 68: "Advertise error",
  4287. 69: "Srmount error",
  4288. 70: "Communication error on send",
  4289. 71: "Protocol error",
  4290. 72: "Multihop attempted",
  4291. 73: "Cross mount point (not really error)",
  4292. 74: "Trying to read unreadable message",
  4293. 75: "Value too large for defined data type",
  4294. 76: "Given log. name not unique",
  4295. 77: "f.d. invalid for this operation",
  4296. 78: "Remote address changed",
  4297. 79: "Can access a needed shared lib",
  4298. 80: "Accessing a corrupted shared lib",
  4299. 81: ".lib section in a.out corrupted",
  4300. 82: "Attempting to link in too many libs",
  4301. 83: "Attempting to exec a shared library",
  4302. 84: "Illegal byte sequence",
  4303. 86: "Streams pipe error",
  4304. 87: "Too many users",
  4305. 88: "Socket operation on non-socket",
  4306. 89: "Destination address required",
  4307. 90: "Message too long",
  4308. 91: "Protocol wrong type for socket",
  4309. 92: "Protocol not available",
  4310. 93: "Unknown protocol",
  4311. 94: "Socket type not supported",
  4312. 95: "Not supported",
  4313. 96: "Protocol family not supported",
  4314. 97: "Address family not supported by protocol family",
  4315. 98: "Address already in use",
  4316. 99: "Address not available",
  4317. 100: "Network interface is not configured",
  4318. 101: "Network is unreachable",
  4319. 102: "Connection reset by network",
  4320. 103: "Connection aborted",
  4321. 104: "Connection reset by peer",
  4322. 105: "No buffer space available",
  4323. 106: "Socket is already connected",
  4324. 107: "Socket is not connected",
  4325. 108: "Can't send after socket shutdown",
  4326. 109: "Too many references",
  4327. 110: "Connection timed out",
  4328. 111: "Connection refused",
  4329. 112: "Host is down",
  4330. 113: "Host is unreachable",
  4331. 114: "Socket already connected",
  4332. 115: "Connection already in progress",
  4333. 116: "Stale file handle",
  4334. 122: "Quota exceeded",
  4335. 123: "No medium (in tape drive)",
  4336. 125: "Operation canceled",
  4337. 130: "Previous owner died",
  4338. 131: "State not recoverable"
  4339. };
  4340. var PATH = {
  4341. splitPath: (function(filename) {
  4342. var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;
  4343. return splitPathRe.exec(filename).slice(1);
  4344. }),
  4345. normalizeArray: (function(parts, allowAboveRoot) {
  4346. var up = 0;
  4347. for (var i = parts.length - 1; i >= 0; i--) {
  4348. var last = parts[i];
  4349. if (last === ".") {
  4350. parts.splice(i, 1);
  4351. } else if (last === "..") {
  4352. parts.splice(i, 1);
  4353. up++;
  4354. } else if (up) {
  4355. parts.splice(i, 1);
  4356. up--;
  4357. }
  4358. }
  4359. if (allowAboveRoot) {
  4360. for (; up; up--) {
  4361. parts.unshift("..");
  4362. }
  4363. }
  4364. return parts;
  4365. }),
  4366. normalize: (function(path) {
  4367. var isAbsolute = path.charAt(0) === "/", trailingSlash = path.substr(-1) === "/";
  4368. path = PATH.normalizeArray(path.split("/").filter((function(p) {
  4369. return !!p;
  4370. })), !isAbsolute).join("/");
  4371. if (!path && !isAbsolute) {
  4372. path = ".";
  4373. }
  4374. if (path && trailingSlash) {
  4375. path += "/";
  4376. }
  4377. return (isAbsolute ? "/" : "") + path;
  4378. }),
  4379. dirname: (function(path) {
  4380. var result = PATH.splitPath(path), root = result[0], dir = result[1];
  4381. if (!root && !dir) {
  4382. return ".";
  4383. }
  4384. if (dir) {
  4385. dir = dir.substr(0, dir.length - 1);
  4386. }
  4387. return root + dir;
  4388. }),
  4389. basename: (function(path) {
  4390. if (path === "/") return "/";
  4391. var lastSlash = path.lastIndexOf("/");
  4392. if (lastSlash === -1) return path;
  4393. return path.substr(lastSlash + 1);
  4394. }),
  4395. extname: (function(path) {
  4396. return PATH.splitPath(path)[3];
  4397. }),
  4398. join: (function() {
  4399. var paths = Array.prototype.slice.call(arguments, 0);
  4400. return PATH.normalize(paths.join("/"));
  4401. }),
  4402. join2: (function(l, r) {
  4403. return PATH.normalize(l + "/" + r);
  4404. }),
  4405. resolve: (function() {
  4406. var resolvedPath = "", resolvedAbsolute = false;
  4407. for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {
  4408. var path = i >= 0 ? arguments[i] : FS.cwd();
  4409. if (typeof path !== "string") {
  4410. throw new TypeError("Arguments to path.resolve must be strings");
  4411. } else if (!path) {
  4412. return "";
  4413. }
  4414. resolvedPath = path + "/" + resolvedPath;
  4415. resolvedAbsolute = path.charAt(0) === "/";
  4416. }
  4417. resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter((function(p) {
  4418. return !!p;
  4419. })), !resolvedAbsolute).join("/");
  4420. return (resolvedAbsolute ? "/" : "") + resolvedPath || ".";
  4421. }),
  4422. relative: (function(from, to) {
  4423. from = PATH.resolve(from).substr(1);
  4424. to = PATH.resolve(to).substr(1);
  4425. function trim(arr) {
  4426. var start = 0;
  4427. for (; start < arr.length; start++) {
  4428. if (arr[start] !== "") break;
  4429. }
  4430. var end = arr.length - 1;
  4431. for (; end >= 0; end--) {
  4432. if (arr[end] !== "") break;
  4433. }
  4434. if (start > end) return [];
  4435. return arr.slice(start, end - start + 1);
  4436. }
  4437. var fromParts = trim(from.split("/"));
  4438. var toParts = trim(to.split("/"));
  4439. var length = Math.min(fromParts.length, toParts.length);
  4440. var samePartsLength = length;
  4441. for (var i = 0; i < length; i++) {
  4442. if (fromParts[i] !== toParts[i]) {
  4443. samePartsLength = i;
  4444. break;
  4445. }
  4446. }
  4447. var outputParts = [];
  4448. for (var i = samePartsLength; i < fromParts.length; i++) {
  4449. outputParts.push("..");
  4450. }
  4451. outputParts = outputParts.concat(toParts.slice(samePartsLength));
  4452. return outputParts.join("/");
  4453. })
  4454. };
  4455. var TTY = {
  4456. ttys: [],
  4457. init: (function() {}),
  4458. shutdown: (function() {}),
  4459. register: (function(dev, ops) {
  4460. TTY.ttys[dev] = {
  4461. input: [],
  4462. output: [],
  4463. ops: ops
  4464. };
  4465. FS.registerDevice(dev, TTY.stream_ops);
  4466. }),
  4467. stream_ops: {
  4468. open: (function(stream) {
  4469. var tty = TTY.ttys[stream.node.rdev];
  4470. if (!tty) {
  4471. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  4472. }
  4473. stream.tty = tty;
  4474. stream.seekable = false;
  4475. }),
  4476. close: (function(stream) {
  4477. stream.tty.ops.flush(stream.tty);
  4478. }),
  4479. flush: (function(stream) {
  4480. stream.tty.ops.flush(stream.tty);
  4481. }),
  4482. read: (function(stream, buffer, offset, length, pos) {
  4483. if (!stream.tty || !stream.tty.ops.get_char) {
  4484. throw new FS.ErrnoError(ERRNO_CODES.ENXIO);
  4485. }
  4486. var bytesRead = 0;
  4487. for (var i = 0; i < length; i++) {
  4488. var result;
  4489. try {
  4490. result = stream.tty.ops.get_char(stream.tty);
  4491. } catch (e) {
  4492. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  4493. }
  4494. if (result === undefined && bytesRead === 0) {
  4495. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  4496. }
  4497. if (result === null || result === undefined) break;
  4498. bytesRead++;
  4499. buffer[offset + i] = result;
  4500. }
  4501. if (bytesRead) {
  4502. stream.node.timestamp = Date.now();
  4503. }
  4504. return bytesRead;
  4505. }),
  4506. write: (function(stream, buffer, offset, length, pos) {
  4507. if (!stream.tty || !stream.tty.ops.put_char) {
  4508. throw new FS.ErrnoError(ERRNO_CODES.ENXIO);
  4509. }
  4510. for (var i = 0; i < length; i++) {
  4511. try {
  4512. stream.tty.ops.put_char(stream.tty, buffer[offset + i]);
  4513. } catch (e) {
  4514. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  4515. }
  4516. }
  4517. if (length) {
  4518. stream.node.timestamp = Date.now();
  4519. }
  4520. return i;
  4521. })
  4522. },
  4523. default_tty_ops: {
  4524. get_char: (function(tty) {
  4525. if (!tty.input.length) {
  4526. var result = null;
  4527. if (ENVIRONMENT_IS_NODE) {
  4528. var BUFSIZE = 256;
  4529. var buf = new Buffer(BUFSIZE);
  4530. var bytesRead = 0;
  4531. var isPosixPlatform = process.platform != "win32";
  4532. var fd = process.stdin.fd;
  4533. if (isPosixPlatform) {
  4534. var usingDevice = false;
  4535. try {
  4536. fd = fs.openSync("/dev/stdin", "r");
  4537. usingDevice = true;
  4538. } catch (e) {}
  4539. }
  4540. try {
  4541. bytesRead = fs.readSync(fd, buf, 0, BUFSIZE, null);
  4542. } catch (e) {
  4543. if (e.toString().indexOf("EOF") != -1) bytesRead = 0; else throw e;
  4544. }
  4545. if (usingDevice) {
  4546. fs.closeSync(fd);
  4547. }
  4548. if (bytesRead > 0) {
  4549. result = buf.slice(0, bytesRead).toString("utf-8");
  4550. } else {
  4551. result = null;
  4552. }
  4553. } else if (typeof window != "undefined" && typeof window.prompt == "function") {
  4554. result = window.prompt("Input: ");
  4555. if (result !== null) {
  4556. result += "\n";
  4557. }
  4558. } else if (typeof readline == "function") {
  4559. result = readline();
  4560. if (result !== null) {
  4561. result += "\n";
  4562. }
  4563. }
  4564. if (!result) {
  4565. return null;
  4566. }
  4567. tty.input = intArrayFromString(result, true);
  4568. }
  4569. return tty.input.shift();
  4570. }),
  4571. put_char: (function(tty, val) {
  4572. if (val === null || val === 10) {
  4573. out(UTF8ArrayToString(tty.output, 0));
  4574. tty.output = [];
  4575. } else {
  4576. if (val != 0) tty.output.push(val);
  4577. }
  4578. }),
  4579. flush: (function(tty) {
  4580. if (tty.output && tty.output.length > 0) {
  4581. out(UTF8ArrayToString(tty.output, 0));
  4582. tty.output = [];
  4583. }
  4584. })
  4585. },
  4586. default_tty1_ops: {
  4587. put_char: (function(tty, val) {
  4588. if (val === null || val === 10) {
  4589. err(UTF8ArrayToString(tty.output, 0));
  4590. tty.output = [];
  4591. } else {
  4592. if (val != 0) tty.output.push(val);
  4593. }
  4594. }),
  4595. flush: (function(tty) {
  4596. if (tty.output && tty.output.length > 0) {
  4597. err(UTF8ArrayToString(tty.output, 0));
  4598. tty.output = [];
  4599. }
  4600. })
  4601. }
  4602. };
  4603. var MEMFS = {
  4604. ops_table: null,
  4605. mount: (function(mount) {
  4606. return MEMFS.createNode(null, "/", 16384 | 511, 0);
  4607. }),
  4608. createNode: (function(parent, name, mode, dev) {
  4609. if (FS.isBlkdev(mode) || FS.isFIFO(mode)) {
  4610. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  4611. }
  4612. if (!MEMFS.ops_table) {
  4613. MEMFS.ops_table = {
  4614. dir: {
  4615. node: {
  4616. getattr: MEMFS.node_ops.getattr,
  4617. setattr: MEMFS.node_ops.setattr,
  4618. lookup: MEMFS.node_ops.lookup,
  4619. mknod: MEMFS.node_ops.mknod,
  4620. rename: MEMFS.node_ops.rename,
  4621. unlink: MEMFS.node_ops.unlink,
  4622. rmdir: MEMFS.node_ops.rmdir,
  4623. readdir: MEMFS.node_ops.readdir,
  4624. symlink: MEMFS.node_ops.symlink
  4625. },
  4626. stream: {
  4627. llseek: MEMFS.stream_ops.llseek
  4628. }
  4629. },
  4630. file: {
  4631. node: {
  4632. getattr: MEMFS.node_ops.getattr,
  4633. setattr: MEMFS.node_ops.setattr
  4634. },
  4635. stream: {
  4636. llseek: MEMFS.stream_ops.llseek,
  4637. read: MEMFS.stream_ops.read,
  4638. write: MEMFS.stream_ops.write,
  4639. allocate: MEMFS.stream_ops.allocate,
  4640. mmap: MEMFS.stream_ops.mmap,
  4641. msync: MEMFS.stream_ops.msync
  4642. }
  4643. },
  4644. link: {
  4645. node: {
  4646. getattr: MEMFS.node_ops.getattr,
  4647. setattr: MEMFS.node_ops.setattr,
  4648. readlink: MEMFS.node_ops.readlink
  4649. },
  4650. stream: {}
  4651. },
  4652. chrdev: {
  4653. node: {
  4654. getattr: MEMFS.node_ops.getattr,
  4655. setattr: MEMFS.node_ops.setattr
  4656. },
  4657. stream: FS.chrdev_stream_ops
  4658. }
  4659. };
  4660. }
  4661. var node = FS.createNode(parent, name, mode, dev);
  4662. if (FS.isDir(node.mode)) {
  4663. node.node_ops = MEMFS.ops_table.dir.node;
  4664. node.stream_ops = MEMFS.ops_table.dir.stream;
  4665. node.contents = {};
  4666. } else if (FS.isFile(node.mode)) {
  4667. node.node_ops = MEMFS.ops_table.file.node;
  4668. node.stream_ops = MEMFS.ops_table.file.stream;
  4669. node.usedBytes = 0;
  4670. node.contents = null;
  4671. } else if (FS.isLink(node.mode)) {
  4672. node.node_ops = MEMFS.ops_table.link.node;
  4673. node.stream_ops = MEMFS.ops_table.link.stream;
  4674. } else if (FS.isChrdev(node.mode)) {
  4675. node.node_ops = MEMFS.ops_table.chrdev.node;
  4676. node.stream_ops = MEMFS.ops_table.chrdev.stream;
  4677. }
  4678. node.timestamp = Date.now();
  4679. if (parent) {
  4680. parent.contents[name] = node;
  4681. }
  4682. return node;
  4683. }),
  4684. getFileDataAsRegularArray: (function(node) {
  4685. if (node.contents && node.contents.subarray) {
  4686. var arr = [];
  4687. for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]);
  4688. return arr;
  4689. }
  4690. return node.contents;
  4691. }),
  4692. getFileDataAsTypedArray: (function(node) {
  4693. if (!node.contents) return new Uint8Array;
  4694. if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes);
  4695. return new Uint8Array(node.contents);
  4696. }),
  4697. expandFileStorage: (function(node, newCapacity) {
  4698. if (node.contents && node.contents.subarray && newCapacity > node.contents.length) {
  4699. node.contents = MEMFS.getFileDataAsRegularArray(node);
  4700. node.usedBytes = node.contents.length;
  4701. }
  4702. if (!node.contents || node.contents.subarray) {
  4703. var prevCapacity = node.contents ? node.contents.length : 0;
  4704. if (prevCapacity >= newCapacity) return;
  4705. var CAPACITY_DOUBLING_MAX = 1024 * 1024;
  4706. newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0);
  4707. if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256);
  4708. var oldContents = node.contents;
  4709. node.contents = new Uint8Array(newCapacity);
  4710. if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0);
  4711. return;
  4712. }
  4713. if (!node.contents && newCapacity > 0) node.contents = [];
  4714. while (node.contents.length < newCapacity) node.contents.push(0);
  4715. }),
  4716. resizeFileStorage: (function(node, newSize) {
  4717. if (node.usedBytes == newSize) return;
  4718. if (newSize == 0) {
  4719. node.contents = null;
  4720. node.usedBytes = 0;
  4721. return;
  4722. }
  4723. if (!node.contents || node.contents.subarray) {
  4724. var oldContents = node.contents;
  4725. node.contents = new Uint8Array(new ArrayBuffer(newSize));
  4726. if (oldContents) {
  4727. node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes)));
  4728. }
  4729. node.usedBytes = newSize;
  4730. return;
  4731. }
  4732. if (!node.contents) node.contents = [];
  4733. if (node.contents.length > newSize) node.contents.length = newSize; else while (node.contents.length < newSize) node.contents.push(0);
  4734. node.usedBytes = newSize;
  4735. }),
  4736. node_ops: {
  4737. getattr: (function(node) {
  4738. var attr = {};
  4739. attr.dev = FS.isChrdev(node.mode) ? node.id : 1;
  4740. attr.ino = node.id;
  4741. attr.mode = node.mode;
  4742. attr.nlink = 1;
  4743. attr.uid = 0;
  4744. attr.gid = 0;
  4745. attr.rdev = node.rdev;
  4746. if (FS.isDir(node.mode)) {
  4747. attr.size = 4096;
  4748. } else if (FS.isFile(node.mode)) {
  4749. attr.size = node.usedBytes;
  4750. } else if (FS.isLink(node.mode)) {
  4751. attr.size = node.link.length;
  4752. } else {
  4753. attr.size = 0;
  4754. }
  4755. attr.atime = new Date(node.timestamp);
  4756. attr.mtime = new Date(node.timestamp);
  4757. attr.ctime = new Date(node.timestamp);
  4758. attr.blksize = 4096;
  4759. attr.blocks = Math.ceil(attr.size / attr.blksize);
  4760. return attr;
  4761. }),
  4762. setattr: (function(node, attr) {
  4763. if (attr.mode !== undefined) {
  4764. node.mode = attr.mode;
  4765. }
  4766. if (attr.timestamp !== undefined) {
  4767. node.timestamp = attr.timestamp;
  4768. }
  4769. if (attr.size !== undefined) {
  4770. MEMFS.resizeFileStorage(node, attr.size);
  4771. }
  4772. }),
  4773. lookup: (function(parent, name) {
  4774. throw FS.genericErrors[ERRNO_CODES.ENOENT];
  4775. }),
  4776. mknod: (function(parent, name, mode, dev) {
  4777. return MEMFS.createNode(parent, name, mode, dev);
  4778. }),
  4779. rename: (function(old_node, new_dir, new_name) {
  4780. if (FS.isDir(old_node.mode)) {
  4781. var new_node;
  4782. try {
  4783. new_node = FS.lookupNode(new_dir, new_name);
  4784. } catch (e) {}
  4785. if (new_node) {
  4786. for (var i in new_node.contents) {
  4787. throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
  4788. }
  4789. }
  4790. }
  4791. delete old_node.parent.contents[old_node.name];
  4792. old_node.name = new_name;
  4793. new_dir.contents[new_name] = old_node;
  4794. old_node.parent = new_dir;
  4795. }),
  4796. unlink: (function(parent, name) {
  4797. delete parent.contents[name];
  4798. }),
  4799. rmdir: (function(parent, name) {
  4800. var node = FS.lookupNode(parent, name);
  4801. for (var i in node.contents) {
  4802. throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
  4803. }
  4804. delete parent.contents[name];
  4805. }),
  4806. readdir: (function(node) {
  4807. var entries = [ ".", ".." ];
  4808. for (var key in node.contents) {
  4809. if (!node.contents.hasOwnProperty(key)) {
  4810. continue;
  4811. }
  4812. entries.push(key);
  4813. }
  4814. return entries;
  4815. }),
  4816. symlink: (function(parent, newname, oldpath) {
  4817. var node = MEMFS.createNode(parent, newname, 511 | 40960, 0);
  4818. node.link = oldpath;
  4819. return node;
  4820. }),
  4821. readlink: (function(node) {
  4822. if (!FS.isLink(node.mode)) {
  4823. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  4824. }
  4825. return node.link;
  4826. })
  4827. },
  4828. stream_ops: {
  4829. read: (function(stream, buffer, offset, length, position) {
  4830. var contents = stream.node.contents;
  4831. if (position >= stream.node.usedBytes) return 0;
  4832. var size = Math.min(stream.node.usedBytes - position, length);
  4833. assert(size >= 0);
  4834. if (size > 8 && contents.subarray) {
  4835. buffer.set(contents.subarray(position, position + size), offset);
  4836. } else {
  4837. for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i];
  4838. }
  4839. return size;
  4840. }),
  4841. write: (function(stream, buffer, offset, length, position, canOwn) {
  4842. if (!length) return 0;
  4843. var node = stream.node;
  4844. node.timestamp = Date.now();
  4845. if (buffer.subarray && (!node.contents || node.contents.subarray)) {
  4846. if (canOwn) {
  4847. assert(position === 0, "canOwn must imply no weird position inside the file");
  4848. node.contents = buffer.subarray(offset, offset + length);
  4849. node.usedBytes = length;
  4850. return length;
  4851. } else if (node.usedBytes === 0 && position === 0) {
  4852. node.contents = new Uint8Array(buffer.subarray(offset, offset + length));
  4853. node.usedBytes = length;
  4854. return length;
  4855. } else if (position + length <= node.usedBytes) {
  4856. node.contents.set(buffer.subarray(offset, offset + length), position);
  4857. return length;
  4858. }
  4859. }
  4860. MEMFS.expandFileStorage(node, position + length);
  4861. if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); else {
  4862. for (var i = 0; i < length; i++) {
  4863. node.contents[position + i] = buffer[offset + i];
  4864. }
  4865. }
  4866. node.usedBytes = Math.max(node.usedBytes, position + length);
  4867. return length;
  4868. }),
  4869. llseek: (function(stream, offset, whence) {
  4870. var position = offset;
  4871. if (whence === 1) {
  4872. position += stream.position;
  4873. } else if (whence === 2) {
  4874. if (FS.isFile(stream.node.mode)) {
  4875. position += stream.node.usedBytes;
  4876. }
  4877. }
  4878. if (position < 0) {
  4879. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  4880. }
  4881. return position;
  4882. }),
  4883. allocate: (function(stream, offset, length) {
  4884. MEMFS.expandFileStorage(stream.node, offset + length);
  4885. stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length);
  4886. }),
  4887. mmap: (function(stream, buffer, offset, length, position, prot, flags) {
  4888. if (!FS.isFile(stream.node.mode)) {
  4889. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  4890. }
  4891. var ptr;
  4892. var allocated;
  4893. var contents = stream.node.contents;
  4894. if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) {
  4895. allocated = false;
  4896. ptr = contents.byteOffset;
  4897. } else {
  4898. if (position > 0 || position + length < stream.node.usedBytes) {
  4899. if (contents.subarray) {
  4900. contents = contents.subarray(position, position + length);
  4901. } else {
  4902. contents = Array.prototype.slice.call(contents, position, position + length);
  4903. }
  4904. }
  4905. allocated = true;
  4906. var fromHeap = buffer.buffer == HEAP8.buffer;
  4907. ptr = _malloc(length);
  4908. if (!ptr) {
  4909. throw new FS.ErrnoError(ERRNO_CODES.ENOMEM);
  4910. }
  4911. (fromHeap ? HEAP8 : buffer).set(contents, ptr);
  4912. }
  4913. return {
  4914. ptr: ptr,
  4915. allocated: allocated
  4916. };
  4917. }),
  4918. msync: (function(stream, buffer, offset, length, mmapFlags) {
  4919. if (!FS.isFile(stream.node.mode)) {
  4920. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  4921. }
  4922. if (mmapFlags & 2) {
  4923. return 0;
  4924. }
  4925. var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false);
  4926. return 0;
  4927. })
  4928. }
  4929. };
  4930. var IDBFS = {
  4931. dbs: {},
  4932. indexedDB: (function() {
  4933. if (typeof indexedDB !== "undefined") return indexedDB;
  4934. var ret = null;
  4935. if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
  4936. assert(ret, "IDBFS used, but indexedDB not supported");
  4937. return ret;
  4938. }),
  4939. DB_VERSION: 21,
  4940. DB_STORE_NAME: "FILE_DATA",
  4941. mount: (function(mount) {
  4942. return MEMFS.mount.apply(null, arguments);
  4943. }),
  4944. syncfs: (function(mount, populate, callback) {
  4945. IDBFS.getLocalSet(mount, (function(err, local) {
  4946. if (err) return callback(err);
  4947. IDBFS.getRemoteSet(mount, (function(err, remote) {
  4948. if (err) return callback(err);
  4949. var src = populate ? remote : local;
  4950. var dst = populate ? local : remote;
  4951. IDBFS.reconcile(src, dst, callback);
  4952. }));
  4953. }));
  4954. }),
  4955. getDB: (function(name, callback) {
  4956. var db = IDBFS.dbs[name];
  4957. if (db) {
  4958. return callback(null, db);
  4959. }
  4960. var req;
  4961. try {
  4962. req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION);
  4963. } catch (e) {
  4964. return callback(e);
  4965. }
  4966. if (!req) {
  4967. return callback("Unable to connect to IndexedDB");
  4968. }
  4969. req.onupgradeneeded = (function(e) {
  4970. var db = e.target.result;
  4971. var transaction = e.target.transaction;
  4972. var fileStore;
  4973. if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) {
  4974. fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME);
  4975. } else {
  4976. fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME);
  4977. }
  4978. if (!fileStore.indexNames.contains("timestamp")) {
  4979. fileStore.createIndex("timestamp", "timestamp", {
  4980. unique: false
  4981. });
  4982. }
  4983. });
  4984. req.onsuccess = (function() {
  4985. db = req.result;
  4986. IDBFS.dbs[name] = db;
  4987. callback(null, db);
  4988. });
  4989. req.onerror = (function(e) {
  4990. callback(this.error);
  4991. e.preventDefault();
  4992. });
  4993. }),
  4994. getLocalSet: (function(mount, callback) {
  4995. var entries = {};
  4996. function isRealDir(p) {
  4997. return p !== "." && p !== "..";
  4998. }
  4999. function toAbsolute(root) {
  5000. return (function(p) {
  5001. return PATH.join2(root, p);
  5002. });
  5003. }
  5004. var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));
  5005. while (check.length) {
  5006. var path = check.pop();
  5007. var stat;
  5008. try {
  5009. stat = FS.stat(path);
  5010. } catch (e) {
  5011. return callback(e);
  5012. }
  5013. if (FS.isDir(stat.mode)) {
  5014. check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path)));
  5015. }
  5016. entries[path] = {
  5017. timestamp: stat.mtime
  5018. };
  5019. }
  5020. return callback(null, {
  5021. type: "local",
  5022. entries: entries
  5023. });
  5024. }),
  5025. getRemoteSet: (function(mount, callback) {
  5026. var entries = {};
  5027. IDBFS.getDB(mount.mountpoint, (function(err, db) {
  5028. if (err) return callback(err);
  5029. try {
  5030. var transaction = db.transaction([ IDBFS.DB_STORE_NAME ], "readonly");
  5031. transaction.onerror = (function(e) {
  5032. callback(this.error);
  5033. e.preventDefault();
  5034. });
  5035. var store = transaction.objectStore(IDBFS.DB_STORE_NAME);
  5036. var index = store.index("timestamp");
  5037. index.openKeyCursor().onsuccess = (function(event) {
  5038. var cursor = event.target.result;
  5039. if (!cursor) {
  5040. return callback(null, {
  5041. type: "remote",
  5042. db: db,
  5043. entries: entries
  5044. });
  5045. }
  5046. entries[cursor.primaryKey] = {
  5047. timestamp: cursor.key
  5048. };
  5049. cursor.continue();
  5050. });
  5051. } catch (e) {
  5052. return callback(e);
  5053. }
  5054. }));
  5055. }),
  5056. loadLocalEntry: (function(path, callback) {
  5057. var stat, node;
  5058. try {
  5059. var lookup = FS.lookupPath(path);
  5060. node = lookup.node;
  5061. stat = FS.stat(path);
  5062. } catch (e) {
  5063. return callback(e);
  5064. }
  5065. if (FS.isDir(stat.mode)) {
  5066. return callback(null, {
  5067. timestamp: stat.mtime,
  5068. mode: stat.mode
  5069. });
  5070. } else if (FS.isFile(stat.mode)) {
  5071. node.contents = MEMFS.getFileDataAsTypedArray(node);
  5072. return callback(null, {
  5073. timestamp: stat.mtime,
  5074. mode: stat.mode,
  5075. contents: node.contents
  5076. });
  5077. } else {
  5078. return callback(new Error("node type not supported"));
  5079. }
  5080. }),
  5081. storeLocalEntry: (function(path, entry, callback) {
  5082. try {
  5083. if (FS.isDir(entry.mode)) {
  5084. FS.mkdir(path, entry.mode);
  5085. } else if (FS.isFile(entry.mode)) {
  5086. FS.writeFile(path, entry.contents, {
  5087. canOwn: true
  5088. });
  5089. } else {
  5090. return callback(new Error("node type not supported"));
  5091. }
  5092. FS.chmod(path, entry.mode);
  5093. FS.utime(path, entry.timestamp, entry.timestamp);
  5094. } catch (e) {
  5095. return callback(e);
  5096. }
  5097. callback(null);
  5098. }),
  5099. removeLocalEntry: (function(path, callback) {
  5100. try {
  5101. var lookup = FS.lookupPath(path);
  5102. var stat = FS.stat(path);
  5103. if (FS.isDir(stat.mode)) {
  5104. FS.rmdir(path);
  5105. } else if (FS.isFile(stat.mode)) {
  5106. FS.unlink(path);
  5107. }
  5108. } catch (e) {
  5109. return callback(e);
  5110. }
  5111. callback(null);
  5112. }),
  5113. loadRemoteEntry: (function(store, path, callback) {
  5114. var req = store.get(path);
  5115. req.onsuccess = (function(event) {
  5116. callback(null, event.target.result);
  5117. });
  5118. req.onerror = (function(e) {
  5119. callback(this.error);
  5120. e.preventDefault();
  5121. });
  5122. }),
  5123. storeRemoteEntry: (function(store, path, entry, callback) {
  5124. var req = store.put(entry, path);
  5125. req.onsuccess = (function() {
  5126. callback(null);
  5127. });
  5128. req.onerror = (function(e) {
  5129. callback(this.error);
  5130. e.preventDefault();
  5131. });
  5132. }),
  5133. removeRemoteEntry: (function(store, path, callback) {
  5134. var req = store.delete(path);
  5135. req.onsuccess = (function() {
  5136. callback(null);
  5137. });
  5138. req.onerror = (function(e) {
  5139. callback(this.error);
  5140. e.preventDefault();
  5141. });
  5142. }),
  5143. reconcile: (function(src, dst, callback) {
  5144. var total = 0;
  5145. var create = [];
  5146. Object.keys(src.entries).forEach((function(key) {
  5147. var e = src.entries[key];
  5148. var e2 = dst.entries[key];
  5149. if (!e2 || e.timestamp > e2.timestamp) {
  5150. create.push(key);
  5151. total++;
  5152. }
  5153. }));
  5154. var remove = [];
  5155. Object.keys(dst.entries).forEach((function(key) {
  5156. var e = dst.entries[key];
  5157. var e2 = src.entries[key];
  5158. if (!e2) {
  5159. remove.push(key);
  5160. total++;
  5161. }
  5162. }));
  5163. if (!total) {
  5164. return callback(null);
  5165. }
  5166. var completed = 0;
  5167. var db = src.type === "remote" ? src.db : dst.db;
  5168. var transaction = db.transaction([ IDBFS.DB_STORE_NAME ], "readwrite");
  5169. var store = transaction.objectStore(IDBFS.DB_STORE_NAME);
  5170. function done(err) {
  5171. if (err) {
  5172. if (!done.errored) {
  5173. done.errored = true;
  5174. return callback(err);
  5175. }
  5176. return;
  5177. }
  5178. if (++completed >= total) {
  5179. return callback(null);
  5180. }
  5181. }
  5182. transaction.onerror = (function(e) {
  5183. done(this.error);
  5184. e.preventDefault();
  5185. });
  5186. create.sort().forEach((function(path) {
  5187. if (dst.type === "local") {
  5188. IDBFS.loadRemoteEntry(store, path, (function(err, entry) {
  5189. if (err) return done(err);
  5190. IDBFS.storeLocalEntry(path, entry, done);
  5191. }));
  5192. } else {
  5193. IDBFS.loadLocalEntry(path, (function(err, entry) {
  5194. if (err) return done(err);
  5195. IDBFS.storeRemoteEntry(store, path, entry, done);
  5196. }));
  5197. }
  5198. }));
  5199. remove.sort().reverse().forEach((function(path) {
  5200. if (dst.type === "local") {
  5201. IDBFS.removeLocalEntry(path, done);
  5202. } else {
  5203. IDBFS.removeRemoteEntry(store, path, done);
  5204. }
  5205. }));
  5206. })
  5207. };
  5208. var NODEFS = {
  5209. isWindows: false,
  5210. staticInit: (function() {
  5211. NODEFS.isWindows = !!process.platform.match(/^win/);
  5212. var flags = process["binding"]("constants");
  5213. if (flags["fs"]) {
  5214. flags = flags["fs"];
  5215. }
  5216. NODEFS.flagsForNodeMap = {
  5217. "1024": flags["O_APPEND"],
  5218. "64": flags["O_CREAT"],
  5219. "128": flags["O_EXCL"],
  5220. "0": flags["O_RDONLY"],
  5221. "2": flags["O_RDWR"],
  5222. "4096": flags["O_SYNC"],
  5223. "512": flags["O_TRUNC"],
  5224. "1": flags["O_WRONLY"]
  5225. };
  5226. }),
  5227. bufferFrom: (function(arrayBuffer) {
  5228. return Buffer.alloc ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer);
  5229. }),
  5230. mount: (function(mount) {
  5231. assert(ENVIRONMENT_IS_NODE);
  5232. return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0);
  5233. }),
  5234. createNode: (function(parent, name, mode, dev) {
  5235. if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) {
  5236. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  5237. }
  5238. var node = FS.createNode(parent, name, mode);
  5239. node.node_ops = NODEFS.node_ops;
  5240. node.stream_ops = NODEFS.stream_ops;
  5241. return node;
  5242. }),
  5243. getMode: (function(path) {
  5244. var stat;
  5245. try {
  5246. stat = fs.lstatSync(path);
  5247. if (NODEFS.isWindows) {
  5248. stat.mode = stat.mode | (stat.mode & 292) >> 2;
  5249. }
  5250. } catch (e) {
  5251. if (!e.code) throw e;
  5252. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5253. }
  5254. return stat.mode;
  5255. }),
  5256. realPath: (function(node) {
  5257. var parts = [];
  5258. while (node.parent !== node) {
  5259. parts.push(node.name);
  5260. node = node.parent;
  5261. }
  5262. parts.push(node.mount.opts.root);
  5263. parts.reverse();
  5264. return PATH.join.apply(null, parts);
  5265. }),
  5266. flagsForNode: (function(flags) {
  5267. flags &= ~2097152;
  5268. flags &= ~2048;
  5269. flags &= ~32768;
  5270. flags &= ~524288;
  5271. var newFlags = 0;
  5272. for (var k in NODEFS.flagsForNodeMap) {
  5273. if (flags & k) {
  5274. newFlags |= NODEFS.flagsForNodeMap[k];
  5275. flags ^= k;
  5276. }
  5277. }
  5278. if (!flags) {
  5279. return newFlags;
  5280. } else {
  5281. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  5282. }
  5283. }),
  5284. node_ops: {
  5285. getattr: (function(node) {
  5286. var path = NODEFS.realPath(node);
  5287. var stat;
  5288. try {
  5289. stat = fs.lstatSync(path);
  5290. } catch (e) {
  5291. if (!e.code) throw e;
  5292. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5293. }
  5294. if (NODEFS.isWindows && !stat.blksize) {
  5295. stat.blksize = 4096;
  5296. }
  5297. if (NODEFS.isWindows && !stat.blocks) {
  5298. stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0;
  5299. }
  5300. return {
  5301. dev: stat.dev,
  5302. ino: stat.ino,
  5303. mode: stat.mode,
  5304. nlink: stat.nlink,
  5305. uid: stat.uid,
  5306. gid: stat.gid,
  5307. rdev: stat.rdev,
  5308. size: stat.size,
  5309. atime: stat.atime,
  5310. mtime: stat.mtime,
  5311. ctime: stat.ctime,
  5312. blksize: stat.blksize,
  5313. blocks: stat.blocks
  5314. };
  5315. }),
  5316. setattr: (function(node, attr) {
  5317. var path = NODEFS.realPath(node);
  5318. try {
  5319. if (attr.mode !== undefined) {
  5320. fs.chmodSync(path, attr.mode);
  5321. node.mode = attr.mode;
  5322. }
  5323. if (attr.timestamp !== undefined) {
  5324. var date = new Date(attr.timestamp);
  5325. fs.utimesSync(path, date, date);
  5326. }
  5327. if (attr.size !== undefined) {
  5328. fs.truncateSync(path, attr.size);
  5329. }
  5330. } catch (e) {
  5331. if (!e.code) throw e;
  5332. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5333. }
  5334. }),
  5335. lookup: (function(parent, name) {
  5336. var path = PATH.join2(NODEFS.realPath(parent), name);
  5337. var mode = NODEFS.getMode(path);
  5338. return NODEFS.createNode(parent, name, mode);
  5339. }),
  5340. mknod: (function(parent, name, mode, dev) {
  5341. var node = NODEFS.createNode(parent, name, mode, dev);
  5342. var path = NODEFS.realPath(node);
  5343. try {
  5344. if (FS.isDir(node.mode)) {
  5345. fs.mkdirSync(path, node.mode);
  5346. } else {
  5347. fs.writeFileSync(path, "", {
  5348. mode: node.mode
  5349. });
  5350. }
  5351. } catch (e) {
  5352. if (!e.code) throw e;
  5353. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5354. }
  5355. return node;
  5356. }),
  5357. rename: (function(oldNode, newDir, newName) {
  5358. var oldPath = NODEFS.realPath(oldNode);
  5359. var newPath = PATH.join2(NODEFS.realPath(newDir), newName);
  5360. try {
  5361. fs.renameSync(oldPath, newPath);
  5362. } catch (e) {
  5363. if (!e.code) throw e;
  5364. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5365. }
  5366. }),
  5367. unlink: (function(parent, name) {
  5368. var path = PATH.join2(NODEFS.realPath(parent), name);
  5369. try {
  5370. fs.unlinkSync(path);
  5371. } catch (e) {
  5372. if (!e.code) throw e;
  5373. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5374. }
  5375. }),
  5376. rmdir: (function(parent, name) {
  5377. var path = PATH.join2(NODEFS.realPath(parent), name);
  5378. try {
  5379. fs.rmdirSync(path);
  5380. } catch (e) {
  5381. if (!e.code) throw e;
  5382. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5383. }
  5384. }),
  5385. readdir: (function(node) {
  5386. var path = NODEFS.realPath(node);
  5387. try {
  5388. return fs.readdirSync(path);
  5389. } catch (e) {
  5390. if (!e.code) throw e;
  5391. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5392. }
  5393. }),
  5394. symlink: (function(parent, newName, oldPath) {
  5395. var newPath = PATH.join2(NODEFS.realPath(parent), newName);
  5396. try {
  5397. fs.symlinkSync(oldPath, newPath);
  5398. } catch (e) {
  5399. if (!e.code) throw e;
  5400. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5401. }
  5402. }),
  5403. readlink: (function(node) {
  5404. var path = NODEFS.realPath(node);
  5405. try {
  5406. path = fs.readlinkSync(path);
  5407. path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path);
  5408. return path;
  5409. } catch (e) {
  5410. if (!e.code) throw e;
  5411. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5412. }
  5413. })
  5414. },
  5415. stream_ops: {
  5416. open: (function(stream) {
  5417. var path = NODEFS.realPath(stream.node);
  5418. try {
  5419. if (FS.isFile(stream.node.mode)) {
  5420. stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags));
  5421. }
  5422. } catch (e) {
  5423. if (!e.code) throw e;
  5424. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5425. }
  5426. }),
  5427. close: (function(stream) {
  5428. try {
  5429. if (FS.isFile(stream.node.mode) && stream.nfd) {
  5430. fs.closeSync(stream.nfd);
  5431. }
  5432. } catch (e) {
  5433. if (!e.code) throw e;
  5434. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5435. }
  5436. }),
  5437. read: (function(stream, buffer, offset, length, position) {
  5438. if (length === 0) return 0;
  5439. try {
  5440. return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position);
  5441. } catch (e) {
  5442. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5443. }
  5444. }),
  5445. write: (function(stream, buffer, offset, length, position) {
  5446. try {
  5447. return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position);
  5448. } catch (e) {
  5449. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5450. }
  5451. }),
  5452. llseek: (function(stream, offset, whence) {
  5453. var position = offset;
  5454. if (whence === 1) {
  5455. position += stream.position;
  5456. } else if (whence === 2) {
  5457. if (FS.isFile(stream.node.mode)) {
  5458. try {
  5459. var stat = fs.fstatSync(stream.nfd);
  5460. position += stat.size;
  5461. } catch (e) {
  5462. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5463. }
  5464. }
  5465. }
  5466. if (position < 0) {
  5467. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  5468. }
  5469. return position;
  5470. })
  5471. }
  5472. };
  5473. var WORKERFS = {
  5474. DIR_MODE: 16895,
  5475. FILE_MODE: 33279,
  5476. reader: null,
  5477. mount: (function(mount) {
  5478. assert(ENVIRONMENT_IS_WORKER);
  5479. if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync;
  5480. var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0);
  5481. var createdParents = {};
  5482. function ensureParent(path) {
  5483. var parts = path.split("/");
  5484. var parent = root;
  5485. for (var i = 0; i < parts.length - 1; i++) {
  5486. var curr = parts.slice(0, i + 1).join("/");
  5487. if (!createdParents[curr]) {
  5488. createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0);
  5489. }
  5490. parent = createdParents[curr];
  5491. }
  5492. return parent;
  5493. }
  5494. function base(path) {
  5495. var parts = path.split("/");
  5496. return parts[parts.length - 1];
  5497. }
  5498. Array.prototype.forEach.call(mount.opts["files"] || [], (function(file) {
  5499. WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate);
  5500. }));
  5501. (mount.opts["blobs"] || []).forEach((function(obj) {
  5502. WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]);
  5503. }));
  5504. (mount.opts["packages"] || []).forEach((function(pack) {
  5505. pack["metadata"].files.forEach((function(file) {
  5506. var name = file.filename.substr(1);
  5507. WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end));
  5508. }));
  5509. }));
  5510. return root;
  5511. }),
  5512. createNode: (function(parent, name, mode, dev, contents, mtime) {
  5513. var node = FS.createNode(parent, name, mode);
  5514. node.mode = mode;
  5515. node.node_ops = WORKERFS.node_ops;
  5516. node.stream_ops = WORKERFS.stream_ops;
  5517. node.timestamp = (mtime || new Date).getTime();
  5518. assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE);
  5519. if (mode === WORKERFS.FILE_MODE) {
  5520. node.size = contents.size;
  5521. node.contents = contents;
  5522. } else {
  5523. node.size = 4096;
  5524. node.contents = {};
  5525. }
  5526. if (parent) {
  5527. parent.contents[name] = node;
  5528. }
  5529. return node;
  5530. }),
  5531. node_ops: {
  5532. getattr: (function(node) {
  5533. return {
  5534. dev: 1,
  5535. ino: undefined,
  5536. mode: node.mode,
  5537. nlink: 1,
  5538. uid: 0,
  5539. gid: 0,
  5540. rdev: undefined,
  5541. size: node.size,
  5542. atime: new Date(node.timestamp),
  5543. mtime: new Date(node.timestamp),
  5544. ctime: new Date(node.timestamp),
  5545. blksize: 4096,
  5546. blocks: Math.ceil(node.size / 4096)
  5547. };
  5548. }),
  5549. setattr: (function(node, attr) {
  5550. if (attr.mode !== undefined) {
  5551. node.mode = attr.mode;
  5552. }
  5553. if (attr.timestamp !== undefined) {
  5554. node.timestamp = attr.timestamp;
  5555. }
  5556. }),
  5557. lookup: (function(parent, name) {
  5558. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  5559. }),
  5560. mknod: (function(parent, name, mode, dev) {
  5561. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5562. }),
  5563. rename: (function(oldNode, newDir, newName) {
  5564. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5565. }),
  5566. unlink: (function(parent, name) {
  5567. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5568. }),
  5569. rmdir: (function(parent, name) {
  5570. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5571. }),
  5572. readdir: (function(node) {
  5573. var entries = [ ".", ".." ];
  5574. for (var key in node.contents) {
  5575. if (!node.contents.hasOwnProperty(key)) {
  5576. continue;
  5577. }
  5578. entries.push(key);
  5579. }
  5580. return entries;
  5581. }),
  5582. symlink: (function(parent, newName, oldPath) {
  5583. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5584. }),
  5585. readlink: (function(node) {
  5586. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5587. })
  5588. },
  5589. stream_ops: {
  5590. read: (function(stream, buffer, offset, length, position) {
  5591. if (position >= stream.node.size) return 0;
  5592. var chunk = stream.node.contents.slice(position, position + length);
  5593. var ab = WORKERFS.reader.readAsArrayBuffer(chunk);
  5594. buffer.set(new Uint8Array(ab), offset);
  5595. return chunk.size;
  5596. }),
  5597. write: (function(stream, buffer, offset, length, position) {
  5598. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  5599. }),
  5600. llseek: (function(stream, offset, whence) {
  5601. var position = offset;
  5602. if (whence === 1) {
  5603. position += stream.position;
  5604. } else if (whence === 2) {
  5605. if (FS.isFile(stream.node.mode)) {
  5606. position += stream.node.size;
  5607. }
  5608. }
  5609. if (position < 0) {
  5610. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  5611. }
  5612. return position;
  5613. })
  5614. }
  5615. };
  5616. STATICTOP += 16;
  5617. STATICTOP += 16;
  5618. STATICTOP += 16;
  5619. var FS = {
  5620. root: null,
  5621. mounts: [],
  5622. devices: {},
  5623. streams: [],
  5624. nextInode: 1,
  5625. nameTable: null,
  5626. currentPath: "/",
  5627. initialized: false,
  5628. ignorePermissions: true,
  5629. trackingDelegate: {},
  5630. tracking: {
  5631. openFlags: {
  5632. READ: 1,
  5633. WRITE: 2
  5634. }
  5635. },
  5636. ErrnoError: null,
  5637. genericErrors: {},
  5638. filesystems: null,
  5639. syncFSRequests: 0,
  5640. handleFSError: (function(e) {
  5641. if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace();
  5642. return ___setErrNo(e.errno);
  5643. }),
  5644. lookupPath: (function(path, opts) {
  5645. path = PATH.resolve(FS.cwd(), path);
  5646. opts = opts || {};
  5647. if (!path) return {
  5648. path: "",
  5649. node: null
  5650. };
  5651. var defaults = {
  5652. follow_mount: true,
  5653. recurse_count: 0
  5654. };
  5655. for (var key in defaults) {
  5656. if (opts[key] === undefined) {
  5657. opts[key] = defaults[key];
  5658. }
  5659. }
  5660. if (opts.recurse_count > 8) {
  5661. throw new FS.ErrnoError(ERRNO_CODES.ELOOP);
  5662. }
  5663. var parts = PATH.normalizeArray(path.split("/").filter((function(p) {
  5664. return !!p;
  5665. })), false);
  5666. var current = FS.root;
  5667. var current_path = "/";
  5668. for (var i = 0; i < parts.length; i++) {
  5669. var islast = i === parts.length - 1;
  5670. if (islast && opts.parent) {
  5671. break;
  5672. }
  5673. current = FS.lookupNode(current, parts[i]);
  5674. current_path = PATH.join2(current_path, parts[i]);
  5675. if (FS.isMountpoint(current)) {
  5676. if (!islast || islast && opts.follow_mount) {
  5677. current = current.mounted.root;
  5678. }
  5679. }
  5680. if (!islast || opts.follow) {
  5681. var count = 0;
  5682. while (FS.isLink(current.mode)) {
  5683. var link = FS.readlink(current_path);
  5684. current_path = PATH.resolve(PATH.dirname(current_path), link);
  5685. var lookup = FS.lookupPath(current_path, {
  5686. recurse_count: opts.recurse_count
  5687. });
  5688. current = lookup.node;
  5689. if (count++ > 40) {
  5690. throw new FS.ErrnoError(ERRNO_CODES.ELOOP);
  5691. }
  5692. }
  5693. }
  5694. }
  5695. return {
  5696. path: current_path,
  5697. node: current
  5698. };
  5699. }),
  5700. getPath: (function(node) {
  5701. var path;
  5702. while (true) {
  5703. if (FS.isRoot(node)) {
  5704. var mount = node.mount.mountpoint;
  5705. if (!path) return mount;
  5706. return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path;
  5707. }
  5708. path = path ? node.name + "/" + path : node.name;
  5709. node = node.parent;
  5710. }
  5711. }),
  5712. hashName: (function(parentid, name) {
  5713. var hash = 0;
  5714. for (var i = 0; i < name.length; i++) {
  5715. hash = (hash << 5) - hash + name.charCodeAt(i) | 0;
  5716. }
  5717. return (parentid + hash >>> 0) % FS.nameTable.length;
  5718. }),
  5719. hashAddNode: (function(node) {
  5720. var hash = FS.hashName(node.parent.id, node.name);
  5721. node.name_next = FS.nameTable[hash];
  5722. FS.nameTable[hash] = node;
  5723. }),
  5724. hashRemoveNode: (function(node) {
  5725. var hash = FS.hashName(node.parent.id, node.name);
  5726. if (FS.nameTable[hash] === node) {
  5727. FS.nameTable[hash] = node.name_next;
  5728. } else {
  5729. var current = FS.nameTable[hash];
  5730. while (current) {
  5731. if (current.name_next === node) {
  5732. current.name_next = node.name_next;
  5733. break;
  5734. }
  5735. current = current.name_next;
  5736. }
  5737. }
  5738. }),
  5739. lookupNode: (function(parent, name) {
  5740. var err = FS.mayLookup(parent);
  5741. if (err) {
  5742. throw new FS.ErrnoError(err, parent);
  5743. }
  5744. var hash = FS.hashName(parent.id, name);
  5745. for (var node = FS.nameTable[hash]; node; node = node.name_next) {
  5746. var nodeName = node.name;
  5747. if (node.parent.id === parent.id && nodeName === name) {
  5748. return node;
  5749. }
  5750. }
  5751. return FS.lookup(parent, name);
  5752. }),
  5753. createNode: (function(parent, name, mode, rdev) {
  5754. if (!FS.FSNode) {
  5755. FS.FSNode = (function(parent, name, mode, rdev) {
  5756. if (!parent) {
  5757. parent = this;
  5758. }
  5759. this.parent = parent;
  5760. this.mount = parent.mount;
  5761. this.mounted = null;
  5762. this.id = FS.nextInode++;
  5763. this.name = name;
  5764. this.mode = mode;
  5765. this.node_ops = {};
  5766. this.stream_ops = {};
  5767. this.rdev = rdev;
  5768. });
  5769. FS.FSNode.prototype = {};
  5770. var readMode = 292 | 73;
  5771. var writeMode = 146;
  5772. Object.defineProperties(FS.FSNode.prototype, {
  5773. read: {
  5774. get: (function() {
  5775. return (this.mode & readMode) === readMode;
  5776. }),
  5777. set: (function(val) {
  5778. val ? this.mode |= readMode : this.mode &= ~readMode;
  5779. })
  5780. },
  5781. write: {
  5782. get: (function() {
  5783. return (this.mode & writeMode) === writeMode;
  5784. }),
  5785. set: (function(val) {
  5786. val ? this.mode |= writeMode : this.mode &= ~writeMode;
  5787. })
  5788. },
  5789. isFolder: {
  5790. get: (function() {
  5791. return FS.isDir(this.mode);
  5792. })
  5793. },
  5794. isDevice: {
  5795. get: (function() {
  5796. return FS.isChrdev(this.mode);
  5797. })
  5798. }
  5799. });
  5800. }
  5801. var node = new FS.FSNode(parent, name, mode, rdev);
  5802. FS.hashAddNode(node);
  5803. return node;
  5804. }),
  5805. destroyNode: (function(node) {
  5806. FS.hashRemoveNode(node);
  5807. }),
  5808. isRoot: (function(node) {
  5809. return node === node.parent;
  5810. }),
  5811. isMountpoint: (function(node) {
  5812. return !!node.mounted;
  5813. }),
  5814. isFile: (function(mode) {
  5815. return (mode & 61440) === 32768;
  5816. }),
  5817. isDir: (function(mode) {
  5818. return (mode & 61440) === 16384;
  5819. }),
  5820. isLink: (function(mode) {
  5821. return (mode & 61440) === 40960;
  5822. }),
  5823. isChrdev: (function(mode) {
  5824. return (mode & 61440) === 8192;
  5825. }),
  5826. isBlkdev: (function(mode) {
  5827. return (mode & 61440) === 24576;
  5828. }),
  5829. isFIFO: (function(mode) {
  5830. return (mode & 61440) === 4096;
  5831. }),
  5832. isSocket: (function(mode) {
  5833. return (mode & 49152) === 49152;
  5834. }),
  5835. flagModes: {
  5836. "r": 0,
  5837. "rs": 1052672,
  5838. "r+": 2,
  5839. "w": 577,
  5840. "wx": 705,
  5841. "xw": 705,
  5842. "w+": 578,
  5843. "wx+": 706,
  5844. "xw+": 706,
  5845. "a": 1089,
  5846. "ax": 1217,
  5847. "xa": 1217,
  5848. "a+": 1090,
  5849. "ax+": 1218,
  5850. "xa+": 1218
  5851. },
  5852. modeStringToFlags: (function(str) {
  5853. var flags = FS.flagModes[str];
  5854. if (typeof flags === "undefined") {
  5855. throw new Error("Unknown file open mode: " + str);
  5856. }
  5857. return flags;
  5858. }),
  5859. flagsToPermissionString: (function(flag) {
  5860. var perms = [ "r", "w", "rw" ][flag & 3];
  5861. if (flag & 512) {
  5862. perms += "w";
  5863. }
  5864. return perms;
  5865. }),
  5866. nodePermissions: (function(node, perms) {
  5867. if (FS.ignorePermissions) {
  5868. return 0;
  5869. }
  5870. if (perms.indexOf("r") !== -1 && !(node.mode & 292)) {
  5871. return ERRNO_CODES.EACCES;
  5872. } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) {
  5873. return ERRNO_CODES.EACCES;
  5874. } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) {
  5875. return ERRNO_CODES.EACCES;
  5876. }
  5877. return 0;
  5878. }),
  5879. mayLookup: (function(dir) {
  5880. var err = FS.nodePermissions(dir, "x");
  5881. if (err) return err;
  5882. if (!dir.node_ops.lookup) return ERRNO_CODES.EACCES;
  5883. return 0;
  5884. }),
  5885. mayCreate: (function(dir, name) {
  5886. try {
  5887. var node = FS.lookupNode(dir, name);
  5888. return ERRNO_CODES.EEXIST;
  5889. } catch (e) {}
  5890. return FS.nodePermissions(dir, "wx");
  5891. }),
  5892. mayDelete: (function(dir, name, isdir) {
  5893. var node;
  5894. try {
  5895. node = FS.lookupNode(dir, name);
  5896. } catch (e) {
  5897. return e.errno;
  5898. }
  5899. var err = FS.nodePermissions(dir, "wx");
  5900. if (err) {
  5901. return err;
  5902. }
  5903. if (isdir) {
  5904. if (!FS.isDir(node.mode)) {
  5905. return ERRNO_CODES.ENOTDIR;
  5906. }
  5907. if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) {
  5908. return ERRNO_CODES.EBUSY;
  5909. }
  5910. } else {
  5911. if (FS.isDir(node.mode)) {
  5912. return ERRNO_CODES.EISDIR;
  5913. }
  5914. }
  5915. return 0;
  5916. }),
  5917. mayOpen: (function(node, flags) {
  5918. if (!node) {
  5919. return ERRNO_CODES.ENOENT;
  5920. }
  5921. if (FS.isLink(node.mode)) {
  5922. return ERRNO_CODES.ELOOP;
  5923. } else if (FS.isDir(node.mode)) {
  5924. if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) {
  5925. return ERRNO_CODES.EISDIR;
  5926. }
  5927. }
  5928. return FS.nodePermissions(node, FS.flagsToPermissionString(flags));
  5929. }),
  5930. MAX_OPEN_FDS: 4096,
  5931. nextfd: (function(fd_start, fd_end) {
  5932. fd_start = fd_start || 0;
  5933. fd_end = fd_end || FS.MAX_OPEN_FDS;
  5934. for (var fd = fd_start; fd <= fd_end; fd++) {
  5935. if (!FS.streams[fd]) {
  5936. return fd;
  5937. }
  5938. }
  5939. throw new FS.ErrnoError(ERRNO_CODES.EMFILE);
  5940. }),
  5941. getStream: (function(fd) {
  5942. return FS.streams[fd];
  5943. }),
  5944. createStream: (function(stream, fd_start, fd_end) {
  5945. if (!FS.FSStream) {
  5946. FS.FSStream = (function() {});
  5947. FS.FSStream.prototype = {};
  5948. Object.defineProperties(FS.FSStream.prototype, {
  5949. object: {
  5950. get: (function() {
  5951. return this.node;
  5952. }),
  5953. set: (function(val) {
  5954. this.node = val;
  5955. })
  5956. },
  5957. isRead: {
  5958. get: (function() {
  5959. return (this.flags & 2097155) !== 1;
  5960. })
  5961. },
  5962. isWrite: {
  5963. get: (function() {
  5964. return (this.flags & 2097155) !== 0;
  5965. })
  5966. },
  5967. isAppend: {
  5968. get: (function() {
  5969. return this.flags & 1024;
  5970. })
  5971. }
  5972. });
  5973. }
  5974. var newStream = new FS.FSStream;
  5975. for (var p in stream) {
  5976. newStream[p] = stream[p];
  5977. }
  5978. stream = newStream;
  5979. var fd = FS.nextfd(fd_start, fd_end);
  5980. stream.fd = fd;
  5981. FS.streams[fd] = stream;
  5982. return stream;
  5983. }),
  5984. closeStream: (function(fd) {
  5985. FS.streams[fd] = null;
  5986. }),
  5987. chrdev_stream_ops: {
  5988. open: (function(stream) {
  5989. var device = FS.getDevice(stream.node.rdev);
  5990. stream.stream_ops = device.stream_ops;
  5991. if (stream.stream_ops.open) {
  5992. stream.stream_ops.open(stream);
  5993. }
  5994. }),
  5995. llseek: (function() {
  5996. throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
  5997. })
  5998. },
  5999. major: (function(dev) {
  6000. return dev >> 8;
  6001. }),
  6002. minor: (function(dev) {
  6003. return dev & 255;
  6004. }),
  6005. makedev: (function(ma, mi) {
  6006. return ma << 8 | mi;
  6007. }),
  6008. registerDevice: (function(dev, ops) {
  6009. FS.devices[dev] = {
  6010. stream_ops: ops
  6011. };
  6012. }),
  6013. getDevice: (function(dev) {
  6014. return FS.devices[dev];
  6015. }),
  6016. getMounts: (function(mount) {
  6017. var mounts = [];
  6018. var check = [ mount ];
  6019. while (check.length) {
  6020. var m = check.pop();
  6021. mounts.push(m);
  6022. check.push.apply(check, m.mounts);
  6023. }
  6024. return mounts;
  6025. }),
  6026. syncfs: (function(populate, callback) {
  6027. if (typeof populate === "function") {
  6028. callback = populate;
  6029. populate = false;
  6030. }
  6031. FS.syncFSRequests++;
  6032. if (FS.syncFSRequests > 1) {
  6033. console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work");
  6034. }
  6035. var mounts = FS.getMounts(FS.root.mount);
  6036. var completed = 0;
  6037. function doCallback(err) {
  6038. assert(FS.syncFSRequests > 0);
  6039. FS.syncFSRequests--;
  6040. return callback(err);
  6041. }
  6042. function done(err) {
  6043. if (err) {
  6044. if (!done.errored) {
  6045. done.errored = true;
  6046. return doCallback(err);
  6047. }
  6048. return;
  6049. }
  6050. if (++completed >= mounts.length) {
  6051. doCallback(null);
  6052. }
  6053. }
  6054. mounts.forEach((function(mount) {
  6055. if (!mount.type.syncfs) {
  6056. return done(null);
  6057. }
  6058. mount.type.syncfs(mount, populate, done);
  6059. }));
  6060. }),
  6061. mount: (function(type, opts, mountpoint) {
  6062. var root = mountpoint === "/";
  6063. var pseudo = !mountpoint;
  6064. var node;
  6065. if (root && FS.root) {
  6066. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6067. } else if (!root && !pseudo) {
  6068. var lookup = FS.lookupPath(mountpoint, {
  6069. follow_mount: false
  6070. });
  6071. mountpoint = lookup.path;
  6072. node = lookup.node;
  6073. if (FS.isMountpoint(node)) {
  6074. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6075. }
  6076. if (!FS.isDir(node.mode)) {
  6077. throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
  6078. }
  6079. }
  6080. var mount = {
  6081. type: type,
  6082. opts: opts,
  6083. mountpoint: mountpoint,
  6084. mounts: []
  6085. };
  6086. var mountRoot = type.mount(mount);
  6087. mountRoot.mount = mount;
  6088. mount.root = mountRoot;
  6089. if (root) {
  6090. FS.root = mountRoot;
  6091. } else if (node) {
  6092. node.mounted = mount;
  6093. if (node.mount) {
  6094. node.mount.mounts.push(mount);
  6095. }
  6096. }
  6097. return mountRoot;
  6098. }),
  6099. unmount: (function(mountpoint) {
  6100. var lookup = FS.lookupPath(mountpoint, {
  6101. follow_mount: false
  6102. });
  6103. if (!FS.isMountpoint(lookup.node)) {
  6104. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6105. }
  6106. var node = lookup.node;
  6107. var mount = node.mounted;
  6108. var mounts = FS.getMounts(mount);
  6109. Object.keys(FS.nameTable).forEach((function(hash) {
  6110. var current = FS.nameTable[hash];
  6111. while (current) {
  6112. var next = current.name_next;
  6113. if (mounts.indexOf(current.mount) !== -1) {
  6114. FS.destroyNode(current);
  6115. }
  6116. current = next;
  6117. }
  6118. }));
  6119. node.mounted = null;
  6120. var idx = node.mount.mounts.indexOf(mount);
  6121. assert(idx !== -1);
  6122. node.mount.mounts.splice(idx, 1);
  6123. }),
  6124. lookup: (function(parent, name) {
  6125. return parent.node_ops.lookup(parent, name);
  6126. }),
  6127. mknod: (function(path, mode, dev) {
  6128. var lookup = FS.lookupPath(path, {
  6129. parent: true
  6130. });
  6131. var parent = lookup.node;
  6132. var name = PATH.basename(path);
  6133. if (!name || name === "." || name === "..") {
  6134. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6135. }
  6136. var err = FS.mayCreate(parent, name);
  6137. if (err) {
  6138. throw new FS.ErrnoError(err);
  6139. }
  6140. if (!parent.node_ops.mknod) {
  6141. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6142. }
  6143. return parent.node_ops.mknod(parent, name, mode, dev);
  6144. }),
  6145. create: (function(path, mode) {
  6146. mode = mode !== undefined ? mode : 438;
  6147. mode &= 4095;
  6148. mode |= 32768;
  6149. return FS.mknod(path, mode, 0);
  6150. }),
  6151. mkdir: (function(path, mode) {
  6152. mode = mode !== undefined ? mode : 511;
  6153. mode &= 511 | 512;
  6154. mode |= 16384;
  6155. return FS.mknod(path, mode, 0);
  6156. }),
  6157. mkdirTree: (function(path, mode) {
  6158. var dirs = path.split("/");
  6159. var d = "";
  6160. for (var i = 0; i < dirs.length; ++i) {
  6161. if (!dirs[i]) continue;
  6162. d += "/" + dirs[i];
  6163. try {
  6164. FS.mkdir(d, mode);
  6165. } catch (e) {
  6166. if (e.errno != ERRNO_CODES.EEXIST) throw e;
  6167. }
  6168. }
  6169. }),
  6170. mkdev: (function(path, mode, dev) {
  6171. if (typeof dev === "undefined") {
  6172. dev = mode;
  6173. mode = 438;
  6174. }
  6175. mode |= 8192;
  6176. return FS.mknod(path, mode, dev);
  6177. }),
  6178. symlink: (function(oldpath, newpath) {
  6179. if (!PATH.resolve(oldpath)) {
  6180. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6181. }
  6182. var lookup = FS.lookupPath(newpath, {
  6183. parent: true
  6184. });
  6185. var parent = lookup.node;
  6186. if (!parent) {
  6187. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6188. }
  6189. var newname = PATH.basename(newpath);
  6190. var err = FS.mayCreate(parent, newname);
  6191. if (err) {
  6192. throw new FS.ErrnoError(err);
  6193. }
  6194. if (!parent.node_ops.symlink) {
  6195. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6196. }
  6197. return parent.node_ops.symlink(parent, newname, oldpath);
  6198. }),
  6199. rename: (function(old_path, new_path) {
  6200. var old_dirname = PATH.dirname(old_path);
  6201. var new_dirname = PATH.dirname(new_path);
  6202. var old_name = PATH.basename(old_path);
  6203. var new_name = PATH.basename(new_path);
  6204. var lookup, old_dir, new_dir;
  6205. try {
  6206. lookup = FS.lookupPath(old_path, {
  6207. parent: true
  6208. });
  6209. old_dir = lookup.node;
  6210. lookup = FS.lookupPath(new_path, {
  6211. parent: true
  6212. });
  6213. new_dir = lookup.node;
  6214. } catch (e) {
  6215. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6216. }
  6217. if (!old_dir || !new_dir) throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6218. if (old_dir.mount !== new_dir.mount) {
  6219. throw new FS.ErrnoError(ERRNO_CODES.EXDEV);
  6220. }
  6221. var old_node = FS.lookupNode(old_dir, old_name);
  6222. var relative = PATH.relative(old_path, new_dirname);
  6223. if (relative.charAt(0) !== ".") {
  6224. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6225. }
  6226. relative = PATH.relative(new_path, old_dirname);
  6227. if (relative.charAt(0) !== ".") {
  6228. throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
  6229. }
  6230. var new_node;
  6231. try {
  6232. new_node = FS.lookupNode(new_dir, new_name);
  6233. } catch (e) {}
  6234. if (old_node === new_node) {
  6235. return;
  6236. }
  6237. var isdir = FS.isDir(old_node.mode);
  6238. var err = FS.mayDelete(old_dir, old_name, isdir);
  6239. if (err) {
  6240. throw new FS.ErrnoError(err);
  6241. }
  6242. err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name);
  6243. if (err) {
  6244. throw new FS.ErrnoError(err);
  6245. }
  6246. if (!old_dir.node_ops.rename) {
  6247. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6248. }
  6249. if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) {
  6250. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6251. }
  6252. if (new_dir !== old_dir) {
  6253. err = FS.nodePermissions(old_dir, "w");
  6254. if (err) {
  6255. throw new FS.ErrnoError(err);
  6256. }
  6257. }
  6258. try {
  6259. if (FS.trackingDelegate["willMovePath"]) {
  6260. FS.trackingDelegate["willMovePath"](old_path, new_path);
  6261. }
  6262. } catch (e) {
  6263. console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message);
  6264. }
  6265. FS.hashRemoveNode(old_node);
  6266. try {
  6267. old_dir.node_ops.rename(old_node, new_dir, new_name);
  6268. } catch (e) {
  6269. throw e;
  6270. } finally {
  6271. FS.hashAddNode(old_node);
  6272. }
  6273. try {
  6274. if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path);
  6275. } catch (e) {
  6276. console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message);
  6277. }
  6278. }),
  6279. rmdir: (function(path) {
  6280. var lookup = FS.lookupPath(path, {
  6281. parent: true
  6282. });
  6283. var parent = lookup.node;
  6284. var name = PATH.basename(path);
  6285. var node = FS.lookupNode(parent, name);
  6286. var err = FS.mayDelete(parent, name, true);
  6287. if (err) {
  6288. throw new FS.ErrnoError(err);
  6289. }
  6290. if (!parent.node_ops.rmdir) {
  6291. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6292. }
  6293. if (FS.isMountpoint(node)) {
  6294. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6295. }
  6296. try {
  6297. if (FS.trackingDelegate["willDeletePath"]) {
  6298. FS.trackingDelegate["willDeletePath"](path);
  6299. }
  6300. } catch (e) {
  6301. console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message);
  6302. }
  6303. parent.node_ops.rmdir(parent, name);
  6304. FS.destroyNode(node);
  6305. try {
  6306. if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path);
  6307. } catch (e) {
  6308. console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message);
  6309. }
  6310. }),
  6311. readdir: (function(path) {
  6312. var lookup = FS.lookupPath(path, {
  6313. follow: true
  6314. });
  6315. var node = lookup.node;
  6316. if (!node.node_ops.readdir) {
  6317. throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
  6318. }
  6319. return node.node_ops.readdir(node);
  6320. }),
  6321. unlink: (function(path) {
  6322. var lookup = FS.lookupPath(path, {
  6323. parent: true
  6324. });
  6325. var parent = lookup.node;
  6326. var name = PATH.basename(path);
  6327. var node = FS.lookupNode(parent, name);
  6328. var err = FS.mayDelete(parent, name, false);
  6329. if (err) {
  6330. throw new FS.ErrnoError(err);
  6331. }
  6332. if (!parent.node_ops.unlink) {
  6333. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6334. }
  6335. if (FS.isMountpoint(node)) {
  6336. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6337. }
  6338. try {
  6339. if (FS.trackingDelegate["willDeletePath"]) {
  6340. FS.trackingDelegate["willDeletePath"](path);
  6341. }
  6342. } catch (e) {
  6343. console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message);
  6344. }
  6345. parent.node_ops.unlink(parent, name);
  6346. FS.destroyNode(node);
  6347. try {
  6348. if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path);
  6349. } catch (e) {
  6350. console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message);
  6351. }
  6352. }),
  6353. readlink: (function(path) {
  6354. var lookup = FS.lookupPath(path);
  6355. var link = lookup.node;
  6356. if (!link) {
  6357. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6358. }
  6359. if (!link.node_ops.readlink) {
  6360. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6361. }
  6362. return PATH.resolve(FS.getPath(link.parent), link.node_ops.readlink(link));
  6363. }),
  6364. stat: (function(path, dontFollow) {
  6365. var lookup = FS.lookupPath(path, {
  6366. follow: !dontFollow
  6367. });
  6368. var node = lookup.node;
  6369. if (!node) {
  6370. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6371. }
  6372. if (!node.node_ops.getattr) {
  6373. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6374. }
  6375. return node.node_ops.getattr(node);
  6376. }),
  6377. lstat: (function(path) {
  6378. return FS.stat(path, true);
  6379. }),
  6380. chmod: (function(path, mode, dontFollow) {
  6381. var node;
  6382. if (typeof path === "string") {
  6383. var lookup = FS.lookupPath(path, {
  6384. follow: !dontFollow
  6385. });
  6386. node = lookup.node;
  6387. } else {
  6388. node = path;
  6389. }
  6390. if (!node.node_ops.setattr) {
  6391. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6392. }
  6393. node.node_ops.setattr(node, {
  6394. mode: mode & 4095 | node.mode & ~4095,
  6395. timestamp: Date.now()
  6396. });
  6397. }),
  6398. lchmod: (function(path, mode) {
  6399. FS.chmod(path, mode, true);
  6400. }),
  6401. fchmod: (function(fd, mode) {
  6402. var stream = FS.getStream(fd);
  6403. if (!stream) {
  6404. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6405. }
  6406. FS.chmod(stream.node, mode);
  6407. }),
  6408. chown: (function(path, uid, gid, dontFollow) {
  6409. var node;
  6410. if (typeof path === "string") {
  6411. var lookup = FS.lookupPath(path, {
  6412. follow: !dontFollow
  6413. });
  6414. node = lookup.node;
  6415. } else {
  6416. node = path;
  6417. }
  6418. if (!node.node_ops.setattr) {
  6419. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6420. }
  6421. node.node_ops.setattr(node, {
  6422. timestamp: Date.now()
  6423. });
  6424. }),
  6425. lchown: (function(path, uid, gid) {
  6426. FS.chown(path, uid, gid, true);
  6427. }),
  6428. fchown: (function(fd, uid, gid) {
  6429. var stream = FS.getStream(fd);
  6430. if (!stream) {
  6431. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6432. }
  6433. FS.chown(stream.node, uid, gid);
  6434. }),
  6435. truncate: (function(path, len) {
  6436. if (len < 0) {
  6437. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6438. }
  6439. var node;
  6440. if (typeof path === "string") {
  6441. var lookup = FS.lookupPath(path, {
  6442. follow: true
  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. if (FS.isDir(node.mode)) {
  6452. throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
  6453. }
  6454. if (!FS.isFile(node.mode)) {
  6455. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6456. }
  6457. var err = FS.nodePermissions(node, "w");
  6458. if (err) {
  6459. throw new FS.ErrnoError(err);
  6460. }
  6461. node.node_ops.setattr(node, {
  6462. size: len,
  6463. timestamp: Date.now()
  6464. });
  6465. }),
  6466. ftruncate: (function(fd, len) {
  6467. var stream = FS.getStream(fd);
  6468. if (!stream) {
  6469. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6470. }
  6471. if ((stream.flags & 2097155) === 0) {
  6472. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6473. }
  6474. FS.truncate(stream.node, len);
  6475. }),
  6476. utime: (function(path, atime, mtime) {
  6477. var lookup = FS.lookupPath(path, {
  6478. follow: true
  6479. });
  6480. var node = lookup.node;
  6481. node.node_ops.setattr(node, {
  6482. timestamp: Math.max(atime, mtime)
  6483. });
  6484. }),
  6485. open: (function(path, flags, mode, fd_start, fd_end) {
  6486. if (path === "") {
  6487. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6488. }
  6489. flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags;
  6490. mode = typeof mode === "undefined" ? 438 : mode;
  6491. if (flags & 64) {
  6492. mode = mode & 4095 | 32768;
  6493. } else {
  6494. mode = 0;
  6495. }
  6496. var node;
  6497. if (typeof path === "object") {
  6498. node = path;
  6499. } else {
  6500. path = PATH.normalize(path);
  6501. try {
  6502. var lookup = FS.lookupPath(path, {
  6503. follow: !(flags & 131072)
  6504. });
  6505. node = lookup.node;
  6506. } catch (e) {}
  6507. }
  6508. var created = false;
  6509. if (flags & 64) {
  6510. if (node) {
  6511. if (flags & 128) {
  6512. throw new FS.ErrnoError(ERRNO_CODES.EEXIST);
  6513. }
  6514. } else {
  6515. node = FS.mknod(path, mode, 0);
  6516. created = true;
  6517. }
  6518. }
  6519. if (!node) {
  6520. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6521. }
  6522. if (FS.isChrdev(node.mode)) {
  6523. flags &= ~512;
  6524. }
  6525. if (flags & 65536 && !FS.isDir(node.mode)) {
  6526. throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
  6527. }
  6528. if (!created) {
  6529. var err = FS.mayOpen(node, flags);
  6530. if (err) {
  6531. throw new FS.ErrnoError(err);
  6532. }
  6533. }
  6534. if (flags & 512) {
  6535. FS.truncate(node, 0);
  6536. }
  6537. flags &= ~(128 | 512);
  6538. var stream = FS.createStream({
  6539. node: node,
  6540. path: FS.getPath(node),
  6541. flags: flags,
  6542. seekable: true,
  6543. position: 0,
  6544. stream_ops: node.stream_ops,
  6545. ungotten: [],
  6546. error: false
  6547. }, fd_start, fd_end);
  6548. if (stream.stream_ops.open) {
  6549. stream.stream_ops.open(stream);
  6550. }
  6551. if (Module["logReadFiles"] && !(flags & 1)) {
  6552. if (!FS.readFiles) FS.readFiles = {};
  6553. if (!(path in FS.readFiles)) {
  6554. FS.readFiles[path] = 1;
  6555. err("read file: " + path);
  6556. }
  6557. }
  6558. try {
  6559. if (FS.trackingDelegate["onOpenFile"]) {
  6560. var trackingFlags = 0;
  6561. if ((flags & 2097155) !== 1) {
  6562. trackingFlags |= FS.tracking.openFlags.READ;
  6563. }
  6564. if ((flags & 2097155) !== 0) {
  6565. trackingFlags |= FS.tracking.openFlags.WRITE;
  6566. }
  6567. FS.trackingDelegate["onOpenFile"](path, trackingFlags);
  6568. }
  6569. } catch (e) {
  6570. console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message);
  6571. }
  6572. return stream;
  6573. }),
  6574. close: (function(stream) {
  6575. if (FS.isClosed(stream)) {
  6576. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6577. }
  6578. if (stream.getdents) stream.getdents = null;
  6579. try {
  6580. if (stream.stream_ops.close) {
  6581. stream.stream_ops.close(stream);
  6582. }
  6583. } catch (e) {
  6584. throw e;
  6585. } finally {
  6586. FS.closeStream(stream.fd);
  6587. }
  6588. stream.fd = null;
  6589. }),
  6590. isClosed: (function(stream) {
  6591. return stream.fd === null;
  6592. }),
  6593. llseek: (function(stream, offset, whence) {
  6594. if (FS.isClosed(stream)) {
  6595. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6596. }
  6597. if (!stream.seekable || !stream.stream_ops.llseek) {
  6598. throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
  6599. }
  6600. stream.position = stream.stream_ops.llseek(stream, offset, whence);
  6601. stream.ungotten = [];
  6602. return stream.position;
  6603. }),
  6604. read: (function(stream, buffer, offset, length, position) {
  6605. if (length < 0 || position < 0) {
  6606. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6607. }
  6608. if (FS.isClosed(stream)) {
  6609. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6610. }
  6611. if ((stream.flags & 2097155) === 1) {
  6612. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6613. }
  6614. if (FS.isDir(stream.node.mode)) {
  6615. throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
  6616. }
  6617. if (!stream.stream_ops.read) {
  6618. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6619. }
  6620. var seeking = typeof position !== "undefined";
  6621. if (!seeking) {
  6622. position = stream.position;
  6623. } else if (!stream.seekable) {
  6624. throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
  6625. }
  6626. var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position);
  6627. if (!seeking) stream.position += bytesRead;
  6628. return bytesRead;
  6629. }),
  6630. write: (function(stream, buffer, offset, length, position, canOwn) {
  6631. if (length < 0 || position < 0) {
  6632. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6633. }
  6634. if (FS.isClosed(stream)) {
  6635. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6636. }
  6637. if ((stream.flags & 2097155) === 0) {
  6638. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6639. }
  6640. if (FS.isDir(stream.node.mode)) {
  6641. throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
  6642. }
  6643. if (!stream.stream_ops.write) {
  6644. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6645. }
  6646. if (stream.flags & 1024) {
  6647. FS.llseek(stream, 0, 2);
  6648. }
  6649. var seeking = typeof position !== "undefined";
  6650. if (!seeking) {
  6651. position = stream.position;
  6652. } else if (!stream.seekable) {
  6653. throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
  6654. }
  6655. var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn);
  6656. if (!seeking) stream.position += bytesWritten;
  6657. try {
  6658. if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path);
  6659. } catch (e) {
  6660. console.log("FS.trackingDelegate['onWriteToFile']('" + path + "') threw an exception: " + e.message);
  6661. }
  6662. return bytesWritten;
  6663. }),
  6664. allocate: (function(stream, offset, length) {
  6665. if (FS.isClosed(stream)) {
  6666. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6667. }
  6668. if (offset < 0 || length <= 0) {
  6669. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6670. }
  6671. if ((stream.flags & 2097155) === 0) {
  6672. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6673. }
  6674. if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) {
  6675. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  6676. }
  6677. if (!stream.stream_ops.allocate) {
  6678. throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);
  6679. }
  6680. stream.stream_ops.allocate(stream, offset, length);
  6681. }),
  6682. mmap: (function(stream, buffer, offset, length, position, prot, flags) {
  6683. if ((stream.flags & 2097155) === 1) {
  6684. throw new FS.ErrnoError(ERRNO_CODES.EACCES);
  6685. }
  6686. if (!stream.stream_ops.mmap) {
  6687. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  6688. }
  6689. return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags);
  6690. }),
  6691. msync: (function(stream, buffer, offset, length, mmapFlags) {
  6692. if (!stream || !stream.stream_ops.msync) {
  6693. return 0;
  6694. }
  6695. return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags);
  6696. }),
  6697. munmap: (function(stream) {
  6698. return 0;
  6699. }),
  6700. ioctl: (function(stream, cmd, arg) {
  6701. if (!stream.stream_ops.ioctl) {
  6702. throw new FS.ErrnoError(ERRNO_CODES.ENOTTY);
  6703. }
  6704. return stream.stream_ops.ioctl(stream, cmd, arg);
  6705. }),
  6706. readFile: (function(path, opts) {
  6707. opts = opts || {};
  6708. opts.flags = opts.flags || "r";
  6709. opts.encoding = opts.encoding || "binary";
  6710. if (opts.encoding !== "utf8" && opts.encoding !== "binary") {
  6711. throw new Error('Invalid encoding type "' + opts.encoding + '"');
  6712. }
  6713. var ret;
  6714. var stream = FS.open(path, opts.flags);
  6715. var stat = FS.stat(path);
  6716. var length = stat.size;
  6717. var buf = new Uint8Array(length);
  6718. FS.read(stream, buf, 0, length, 0);
  6719. if (opts.encoding === "utf8") {
  6720. ret = UTF8ArrayToString(buf, 0);
  6721. } else if (opts.encoding === "binary") {
  6722. ret = buf;
  6723. }
  6724. FS.close(stream);
  6725. return ret;
  6726. }),
  6727. writeFile: (function(path, data, opts) {
  6728. opts = opts || {};
  6729. opts.flags = opts.flags || "w";
  6730. var stream = FS.open(path, opts.flags, opts.mode);
  6731. if (typeof data === "string") {
  6732. var buf = new Uint8Array(lengthBytesUTF8(data) + 1);
  6733. var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length);
  6734. FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn);
  6735. } else if (ArrayBuffer.isView(data)) {
  6736. FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn);
  6737. } else {
  6738. throw new Error("Unsupported data type");
  6739. }
  6740. FS.close(stream);
  6741. }),
  6742. cwd: (function() {
  6743. return FS.currentPath;
  6744. }),
  6745. chdir: (function(path) {
  6746. var lookup = FS.lookupPath(path, {
  6747. follow: true
  6748. });
  6749. if (lookup.node === null) {
  6750. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6751. }
  6752. if (!FS.isDir(lookup.node.mode)) {
  6753. throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
  6754. }
  6755. var err = FS.nodePermissions(lookup.node, "x");
  6756. if (err) {
  6757. throw new FS.ErrnoError(err);
  6758. }
  6759. FS.currentPath = lookup.path;
  6760. }),
  6761. createDefaultDirectories: (function() {
  6762. FS.mkdir("/tmp");
  6763. FS.mkdir("/home");
  6764. FS.mkdir("/home/web_user");
  6765. }),
  6766. createDefaultDevices: (function() {
  6767. FS.mkdir("/dev");
  6768. FS.registerDevice(FS.makedev(1, 3), {
  6769. read: (function() {
  6770. return 0;
  6771. }),
  6772. write: (function(stream, buffer, offset, length, pos) {
  6773. return length;
  6774. })
  6775. });
  6776. FS.mkdev("/dev/null", FS.makedev(1, 3));
  6777. TTY.register(FS.makedev(5, 0), TTY.default_tty_ops);
  6778. TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops);
  6779. FS.mkdev("/dev/tty", FS.makedev(5, 0));
  6780. FS.mkdev("/dev/tty1", FS.makedev(6, 0));
  6781. var random_device;
  6782. if (typeof crypto !== "undefined") {
  6783. var randomBuffer = new Uint8Array(1);
  6784. random_device = (function() {
  6785. crypto.getRandomValues(randomBuffer);
  6786. return randomBuffer[0];
  6787. });
  6788. } else if (ENVIRONMENT_IS_NODE) {
  6789. random_device = (function() {
  6790. return require("crypto")["randomBytes"](1)[0];
  6791. });
  6792. } else {
  6793. random_device = (function() {
  6794. return Math.random() * 256 | 0;
  6795. });
  6796. }
  6797. FS.createDevice("/dev", "random", random_device);
  6798. FS.createDevice("/dev", "urandom", random_device);
  6799. FS.mkdir("/dev/shm");
  6800. FS.mkdir("/dev/shm/tmp");
  6801. }),
  6802. createSpecialDirectories: (function() {
  6803. FS.mkdir("/proc");
  6804. FS.mkdir("/proc/self");
  6805. FS.mkdir("/proc/self/fd");
  6806. FS.mount({
  6807. mount: (function() {
  6808. var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73);
  6809. node.node_ops = {
  6810. lookup: (function(parent, name) {
  6811. var fd = +name;
  6812. var stream = FS.getStream(fd);
  6813. if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6814. var ret = {
  6815. parent: null,
  6816. mount: {
  6817. mountpoint: "fake"
  6818. },
  6819. node_ops: {
  6820. readlink: (function() {
  6821. return stream.path;
  6822. })
  6823. }
  6824. };
  6825. ret.parent = ret;
  6826. return ret;
  6827. })
  6828. };
  6829. return node;
  6830. })
  6831. }, {}, "/proc/self/fd");
  6832. }),
  6833. createStandardStreams: (function() {
  6834. if (Module["stdin"]) {
  6835. FS.createDevice("/dev", "stdin", Module["stdin"]);
  6836. } else {
  6837. FS.symlink("/dev/tty", "/dev/stdin");
  6838. }
  6839. if (Module["stdout"]) {
  6840. FS.createDevice("/dev", "stdout", null, Module["stdout"]);
  6841. } else {
  6842. FS.symlink("/dev/tty", "/dev/stdout");
  6843. }
  6844. if (Module["stderr"]) {
  6845. FS.createDevice("/dev", "stderr", null, Module["stderr"]);
  6846. } else {
  6847. FS.symlink("/dev/tty1", "/dev/stderr");
  6848. }
  6849. var stdin = FS.open("/dev/stdin", "r");
  6850. assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")");
  6851. var stdout = FS.open("/dev/stdout", "w");
  6852. assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")");
  6853. var stderr = FS.open("/dev/stderr", "w");
  6854. assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")");
  6855. }),
  6856. ensureErrnoError: (function() {
  6857. if (FS.ErrnoError) return;
  6858. FS.ErrnoError = function ErrnoError(errno, node) {
  6859. this.node = node;
  6860. this.setErrno = (function(errno) {
  6861. this.errno = errno;
  6862. for (var key in ERRNO_CODES) {
  6863. if (ERRNO_CODES[key] === errno) {
  6864. this.code = key;
  6865. break;
  6866. }
  6867. }
  6868. });
  6869. this.setErrno(errno);
  6870. this.message = ERRNO_MESSAGES[errno];
  6871. if (this.stack) Object.defineProperty(this, "stack", {
  6872. value: (new Error).stack,
  6873. writable: true
  6874. });
  6875. if (this.stack) this.stack = demangleAll(this.stack);
  6876. };
  6877. FS.ErrnoError.prototype = new Error;
  6878. FS.ErrnoError.prototype.constructor = FS.ErrnoError;
  6879. [ ERRNO_CODES.ENOENT ].forEach((function(code) {
  6880. FS.genericErrors[code] = new FS.ErrnoError(code);
  6881. FS.genericErrors[code].stack = "<generic error, no stack>";
  6882. }));
  6883. }),
  6884. staticInit: (function() {
  6885. FS.ensureErrnoError();
  6886. FS.nameTable = new Array(4096);
  6887. FS.mount(MEMFS, {}, "/");
  6888. FS.createDefaultDirectories();
  6889. FS.createDefaultDevices();
  6890. FS.createSpecialDirectories();
  6891. FS.filesystems = {
  6892. "MEMFS": MEMFS,
  6893. "IDBFS": IDBFS,
  6894. "NODEFS": NODEFS,
  6895. "WORKERFS": WORKERFS
  6896. };
  6897. }),
  6898. init: (function(input, output, error) {
  6899. 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)");
  6900. FS.init.initialized = true;
  6901. FS.ensureErrnoError();
  6902. Module["stdin"] = input || Module["stdin"];
  6903. Module["stdout"] = output || Module["stdout"];
  6904. Module["stderr"] = error || Module["stderr"];
  6905. FS.createStandardStreams();
  6906. }),
  6907. quit: (function() {
  6908. FS.init.initialized = false;
  6909. var fflush = Module["_fflush"];
  6910. if (fflush) fflush(0);
  6911. for (var i = 0; i < FS.streams.length; i++) {
  6912. var stream = FS.streams[i];
  6913. if (!stream) {
  6914. continue;
  6915. }
  6916. FS.close(stream);
  6917. }
  6918. }),
  6919. getMode: (function(canRead, canWrite) {
  6920. var mode = 0;
  6921. if (canRead) mode |= 292 | 73;
  6922. if (canWrite) mode |= 146;
  6923. return mode;
  6924. }),
  6925. joinPath: (function(parts, forceRelative) {
  6926. var path = PATH.join.apply(null, parts);
  6927. if (forceRelative && path[0] == "/") path = path.substr(1);
  6928. return path;
  6929. }),
  6930. absolutePath: (function(relative, base) {
  6931. return PATH.resolve(base, relative);
  6932. }),
  6933. standardizePath: (function(path) {
  6934. return PATH.normalize(path);
  6935. }),
  6936. findObject: (function(path, dontResolveLastLink) {
  6937. var ret = FS.analyzePath(path, dontResolveLastLink);
  6938. if (ret.exists) {
  6939. return ret.object;
  6940. } else {
  6941. ___setErrNo(ret.error);
  6942. return null;
  6943. }
  6944. }),
  6945. analyzePath: (function(path, dontResolveLastLink) {
  6946. try {
  6947. var lookup = FS.lookupPath(path, {
  6948. follow: !dontResolveLastLink
  6949. });
  6950. path = lookup.path;
  6951. } catch (e) {}
  6952. var ret = {
  6953. isRoot: false,
  6954. exists: false,
  6955. error: 0,
  6956. name: null,
  6957. path: null,
  6958. object: null,
  6959. parentExists: false,
  6960. parentPath: null,
  6961. parentObject: null
  6962. };
  6963. try {
  6964. var lookup = FS.lookupPath(path, {
  6965. parent: true
  6966. });
  6967. ret.parentExists = true;
  6968. ret.parentPath = lookup.path;
  6969. ret.parentObject = lookup.node;
  6970. ret.name = PATH.basename(path);
  6971. lookup = FS.lookupPath(path, {
  6972. follow: !dontResolveLastLink
  6973. });
  6974. ret.exists = true;
  6975. ret.path = lookup.path;
  6976. ret.object = lookup.node;
  6977. ret.name = lookup.node.name;
  6978. ret.isRoot = lookup.path === "/";
  6979. } catch (e) {
  6980. ret.error = e.errno;
  6981. }
  6982. return ret;
  6983. }),
  6984. createFolder: (function(parent, name, canRead, canWrite) {
  6985. var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
  6986. var mode = FS.getMode(canRead, canWrite);
  6987. return FS.mkdir(path, mode);
  6988. }),
  6989. createPath: (function(parent, path, canRead, canWrite) {
  6990. parent = typeof parent === "string" ? parent : FS.getPath(parent);
  6991. var parts = path.split("/").reverse();
  6992. while (parts.length) {
  6993. var part = parts.pop();
  6994. if (!part) continue;
  6995. var current = PATH.join2(parent, part);
  6996. try {
  6997. FS.mkdir(current);
  6998. } catch (e) {}
  6999. parent = current;
  7000. }
  7001. return current;
  7002. }),
  7003. createFile: (function(parent, name, properties, canRead, canWrite) {
  7004. var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
  7005. var mode = FS.getMode(canRead, canWrite);
  7006. return FS.create(path, mode);
  7007. }),
  7008. createDataFile: (function(parent, name, data, canRead, canWrite, canOwn) {
  7009. var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent;
  7010. var mode = FS.getMode(canRead, canWrite);
  7011. var node = FS.create(path, mode);
  7012. if (data) {
  7013. if (typeof data === "string") {
  7014. var arr = new Array(data.length);
  7015. for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i);
  7016. data = arr;
  7017. }
  7018. FS.chmod(node, mode | 146);
  7019. var stream = FS.open(node, "w");
  7020. FS.write(stream, data, 0, data.length, 0, canOwn);
  7021. FS.close(stream);
  7022. FS.chmod(node, mode);
  7023. }
  7024. return node;
  7025. }),
  7026. createDevice: (function(parent, name, input, output) {
  7027. var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
  7028. var mode = FS.getMode(!!input, !!output);
  7029. if (!FS.createDevice.major) FS.createDevice.major = 64;
  7030. var dev = FS.makedev(FS.createDevice.major++, 0);
  7031. FS.registerDevice(dev, {
  7032. open: (function(stream) {
  7033. stream.seekable = false;
  7034. }),
  7035. close: (function(stream) {
  7036. if (output && output.buffer && output.buffer.length) {
  7037. output(10);
  7038. }
  7039. }),
  7040. read: (function(stream, buffer, offset, length, pos) {
  7041. var bytesRead = 0;
  7042. for (var i = 0; i < length; i++) {
  7043. var result;
  7044. try {
  7045. result = input();
  7046. } catch (e) {
  7047. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  7048. }
  7049. if (result === undefined && bytesRead === 0) {
  7050. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  7051. }
  7052. if (result === null || result === undefined) break;
  7053. bytesRead++;
  7054. buffer[offset + i] = result;
  7055. }
  7056. if (bytesRead) {
  7057. stream.node.timestamp = Date.now();
  7058. }
  7059. return bytesRead;
  7060. }),
  7061. write: (function(stream, buffer, offset, length, pos) {
  7062. for (var i = 0; i < length; i++) {
  7063. try {
  7064. output(buffer[offset + i]);
  7065. } catch (e) {
  7066. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  7067. }
  7068. }
  7069. if (length) {
  7070. stream.node.timestamp = Date.now();
  7071. }
  7072. return i;
  7073. })
  7074. });
  7075. return FS.mkdev(path, mode, dev);
  7076. }),
  7077. createLink: (function(parent, name, target, canRead, canWrite) {
  7078. var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
  7079. return FS.symlink(target, path);
  7080. }),
  7081. forceLoadFile: (function(obj) {
  7082. if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true;
  7083. var success = true;
  7084. if (typeof XMLHttpRequest !== "undefined") {
  7085. 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.");
  7086. } else if (Module["read"]) {
  7087. try {
  7088. obj.contents = intArrayFromString(Module["read"](obj.url), true);
  7089. obj.usedBytes = obj.contents.length;
  7090. } catch (e) {
  7091. success = false;
  7092. }
  7093. } else {
  7094. throw new Error("Cannot load without read() or XMLHttpRequest.");
  7095. }
  7096. if (!success) ___setErrNo(ERRNO_CODES.EIO);
  7097. return success;
  7098. }),
  7099. createLazyFile: (function(parent, name, url, canRead, canWrite) {
  7100. function LazyUint8Array() {
  7101. this.lengthKnown = false;
  7102. this.chunks = [];
  7103. }
  7104. LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) {
  7105. if (idx > this.length - 1 || idx < 0) {
  7106. return undefined;
  7107. }
  7108. var chunkOffset = idx % this.chunkSize;
  7109. var chunkNum = idx / this.chunkSize | 0;
  7110. return this.getter(chunkNum)[chunkOffset];
  7111. };
  7112. LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) {
  7113. this.getter = getter;
  7114. };
  7115. LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() {
  7116. var xhr = new XMLHttpRequest;
  7117. xhr.open("HEAD", url, false);
  7118. xhr.send(null);
  7119. if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
  7120. var datalength = Number(xhr.getResponseHeader("Content-length"));
  7121. var header;
  7122. var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes";
  7123. var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip";
  7124. var chunkSize = 1024 * 1024;
  7125. if (!hasByteServing) chunkSize = datalength;
  7126. var doXHR = (function(from, to) {
  7127. if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!");
  7128. if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!");
  7129. var xhr = new XMLHttpRequest;
  7130. xhr.open("GET", url, false);
  7131. if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to);
  7132. if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer";
  7133. if (xhr.overrideMimeType) {
  7134. xhr.overrideMimeType("text/plain; charset=x-user-defined");
  7135. }
  7136. xhr.send(null);
  7137. if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
  7138. if (xhr.response !== undefined) {
  7139. return new Uint8Array(xhr.response || []);
  7140. } else {
  7141. return intArrayFromString(xhr.responseText || "", true);
  7142. }
  7143. });
  7144. var lazyArray = this;
  7145. lazyArray.setDataGetter((function(chunkNum) {
  7146. var start = chunkNum * chunkSize;
  7147. var end = (chunkNum + 1) * chunkSize - 1;
  7148. end = Math.min(end, datalength - 1);
  7149. if (typeof lazyArray.chunks[chunkNum] === "undefined") {
  7150. lazyArray.chunks[chunkNum] = doXHR(start, end);
  7151. }
  7152. if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!");
  7153. return lazyArray.chunks[chunkNum];
  7154. }));
  7155. if (usesGzip || !datalength) {
  7156. chunkSize = datalength = 1;
  7157. datalength = this.getter(0).length;
  7158. chunkSize = datalength;
  7159. console.log("LazyFiles on gzip forces download of the whole file when length is accessed");
  7160. }
  7161. this._length = datalength;
  7162. this._chunkSize = chunkSize;
  7163. this.lengthKnown = true;
  7164. };
  7165. if (typeof XMLHttpRequest !== "undefined") {
  7166. if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";
  7167. var lazyArray = new LazyUint8Array;
  7168. Object.defineProperties(lazyArray, {
  7169. length: {
  7170. get: (function() {
  7171. if (!this.lengthKnown) {
  7172. this.cacheLength();
  7173. }
  7174. return this._length;
  7175. })
  7176. },
  7177. chunkSize: {
  7178. get: (function() {
  7179. if (!this.lengthKnown) {
  7180. this.cacheLength();
  7181. }
  7182. return this._chunkSize;
  7183. })
  7184. }
  7185. });
  7186. var properties = {
  7187. isDevice: false,
  7188. contents: lazyArray
  7189. };
  7190. } else {
  7191. var properties = {
  7192. isDevice: false,
  7193. url: url
  7194. };
  7195. }
  7196. var node = FS.createFile(parent, name, properties, canRead, canWrite);
  7197. if (properties.contents) {
  7198. node.contents = properties.contents;
  7199. } else if (properties.url) {
  7200. node.contents = null;
  7201. node.url = properties.url;
  7202. }
  7203. Object.defineProperties(node, {
  7204. usedBytes: {
  7205. get: (function() {
  7206. return this.contents.length;
  7207. })
  7208. }
  7209. });
  7210. var stream_ops = {};
  7211. var keys = Object.keys(node.stream_ops);
  7212. keys.forEach((function(key) {
  7213. var fn = node.stream_ops[key];
  7214. stream_ops[key] = function forceLoadLazyFile() {
  7215. if (!FS.forceLoadFile(node)) {
  7216. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  7217. }
  7218. return fn.apply(null, arguments);
  7219. };
  7220. }));
  7221. stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) {
  7222. if (!FS.forceLoadFile(node)) {
  7223. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  7224. }
  7225. var contents = stream.node.contents;
  7226. if (position >= contents.length) return 0;
  7227. var size = Math.min(contents.length - position, length);
  7228. assert(size >= 0);
  7229. if (contents.slice) {
  7230. for (var i = 0; i < size; i++) {
  7231. buffer[offset + i] = contents[position + i];
  7232. }
  7233. } else {
  7234. for (var i = 0; i < size; i++) {
  7235. buffer[offset + i] = contents.get(position + i);
  7236. }
  7237. }
  7238. return size;
  7239. };
  7240. node.stream_ops = stream_ops;
  7241. return node;
  7242. }),
  7243. createPreloadedFile: (function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) {
  7244. Browser.init();
  7245. var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent;
  7246. var dep = getUniqueRunDependency("cp " + fullname);
  7247. function processData(byteArray) {
  7248. function finish(byteArray) {
  7249. if (preFinish) preFinish();
  7250. if (!dontCreateFile) {
  7251. FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn);
  7252. }
  7253. if (onload) onload();
  7254. removeRunDependency(dep);
  7255. }
  7256. var handled = false;
  7257. Module["preloadPlugins"].forEach((function(plugin) {
  7258. if (handled) return;
  7259. if (plugin["canHandle"](fullname)) {
  7260. plugin["handle"](byteArray, fullname, finish, (function() {
  7261. if (onerror) onerror();
  7262. removeRunDependency(dep);
  7263. }));
  7264. handled = true;
  7265. }
  7266. }));
  7267. if (!handled) finish(byteArray);
  7268. }
  7269. addRunDependency(dep);
  7270. if (typeof url == "string") {
  7271. Browser.asyncLoad(url, (function(byteArray) {
  7272. processData(byteArray);
  7273. }), onerror);
  7274. } else {
  7275. processData(url);
  7276. }
  7277. }),
  7278. indexedDB: (function() {
  7279. return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
  7280. }),
  7281. DB_NAME: (function() {
  7282. return "EM_FS_" + window.location.pathname;
  7283. }),
  7284. DB_VERSION: 20,
  7285. DB_STORE_NAME: "FILE_DATA",
  7286. saveFilesToDB: (function(paths, onload, onerror) {
  7287. onload = onload || (function() {});
  7288. onerror = onerror || (function() {});
  7289. var indexedDB = FS.indexedDB();
  7290. try {
  7291. var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION);
  7292. } catch (e) {
  7293. return onerror(e);
  7294. }
  7295. openRequest.onupgradeneeded = function openRequest_onupgradeneeded() {
  7296. console.log("creating db");
  7297. var db = openRequest.result;
  7298. db.createObjectStore(FS.DB_STORE_NAME);
  7299. };
  7300. openRequest.onsuccess = function openRequest_onsuccess() {
  7301. var db = openRequest.result;
  7302. var transaction = db.transaction([ FS.DB_STORE_NAME ], "readwrite");
  7303. var files = transaction.objectStore(FS.DB_STORE_NAME);
  7304. var ok = 0, fail = 0, total = paths.length;
  7305. function finish() {
  7306. if (fail == 0) onload(); else onerror();
  7307. }
  7308. paths.forEach((function(path) {
  7309. var putRequest = files.put(FS.analyzePath(path).object.contents, path);
  7310. putRequest.onsuccess = function putRequest_onsuccess() {
  7311. ok++;
  7312. if (ok + fail == total) finish();
  7313. };
  7314. putRequest.onerror = function putRequest_onerror() {
  7315. fail++;
  7316. if (ok + fail == total) finish();
  7317. };
  7318. }));
  7319. transaction.onerror = onerror;
  7320. };
  7321. openRequest.onerror = onerror;
  7322. }),
  7323. loadFilesFromDB: (function(paths, onload, onerror) {
  7324. onload = onload || (function() {});
  7325. onerror = onerror || (function() {});
  7326. var indexedDB = FS.indexedDB();
  7327. try {
  7328. var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION);
  7329. } catch (e) {
  7330. return onerror(e);
  7331. }
  7332. openRequest.onupgradeneeded = onerror;
  7333. openRequest.onsuccess = function openRequest_onsuccess() {
  7334. var db = openRequest.result;
  7335. try {
  7336. var transaction = db.transaction([ FS.DB_STORE_NAME ], "readonly");
  7337. } catch (e) {
  7338. onerror(e);
  7339. return;
  7340. }
  7341. var files = transaction.objectStore(FS.DB_STORE_NAME);
  7342. var ok = 0, fail = 0, total = paths.length;
  7343. function finish() {
  7344. if (fail == 0) onload(); else onerror();
  7345. }
  7346. paths.forEach((function(path) {
  7347. var getRequest = files.get(path);
  7348. getRequest.onsuccess = function getRequest_onsuccess() {
  7349. if (FS.analyzePath(path).exists) {
  7350. FS.unlink(path);
  7351. }
  7352. FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true);
  7353. ok++;
  7354. if (ok + fail == total) finish();
  7355. };
  7356. getRequest.onerror = function getRequest_onerror() {
  7357. fail++;
  7358. if (ok + fail == total) finish();
  7359. };
  7360. }));
  7361. transaction.onerror = onerror;
  7362. };
  7363. openRequest.onerror = onerror;
  7364. })
  7365. };
  7366. var SYSCALLS = {
  7367. DEFAULT_POLLMASK: 5,
  7368. mappings: {},
  7369. umask: 511,
  7370. calculateAt: (function(dirfd, path) {
  7371. if (path[0] !== "/") {
  7372. var dir;
  7373. if (dirfd === -100) {
  7374. dir = FS.cwd();
  7375. } else {
  7376. var dirstream = FS.getStream(dirfd);
  7377. if (!dirstream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  7378. dir = dirstream.path;
  7379. }
  7380. path = PATH.join2(dir, path);
  7381. }
  7382. return path;
  7383. }),
  7384. doStat: (function(func, path, buf) {
  7385. try {
  7386. var stat = func(path);
  7387. } catch (e) {
  7388. if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) {
  7389. return -ERRNO_CODES.ENOTDIR;
  7390. }
  7391. throw e;
  7392. }
  7393. HEAP32[buf >> 2] = stat.dev;
  7394. HEAP32[buf + 4 >> 2] = 0;
  7395. HEAP32[buf + 8 >> 2] = stat.ino;
  7396. HEAP32[buf + 12 >> 2] = stat.mode;
  7397. HEAP32[buf + 16 >> 2] = stat.nlink;
  7398. HEAP32[buf + 20 >> 2] = stat.uid;
  7399. HEAP32[buf + 24 >> 2] = stat.gid;
  7400. HEAP32[buf + 28 >> 2] = stat.rdev;
  7401. HEAP32[buf + 32 >> 2] = 0;
  7402. HEAP32[buf + 36 >> 2] = stat.size;
  7403. HEAP32[buf + 40 >> 2] = 4096;
  7404. HEAP32[buf + 44 >> 2] = stat.blocks;
  7405. HEAP32[buf + 48 >> 2] = stat.atime.getTime() / 1e3 | 0;
  7406. HEAP32[buf + 52 >> 2] = 0;
  7407. HEAP32[buf + 56 >> 2] = stat.mtime.getTime() / 1e3 | 0;
  7408. HEAP32[buf + 60 >> 2] = 0;
  7409. HEAP32[buf + 64 >> 2] = stat.ctime.getTime() / 1e3 | 0;
  7410. HEAP32[buf + 68 >> 2] = 0;
  7411. HEAP32[buf + 72 >> 2] = stat.ino;
  7412. return 0;
  7413. }),
  7414. doMsync: (function(addr, stream, len, flags) {
  7415. var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len));
  7416. FS.msync(stream, buffer, 0, len, flags);
  7417. }),
  7418. doMkdir: (function(path, mode) {
  7419. path = PATH.normalize(path);
  7420. if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1);
  7421. FS.mkdir(path, mode, 0);
  7422. return 0;
  7423. }),
  7424. doMknod: (function(path, mode, dev) {
  7425. switch (mode & 61440) {
  7426. case 32768:
  7427. case 8192:
  7428. case 24576:
  7429. case 4096:
  7430. case 49152:
  7431. break;
  7432. default:
  7433. return -ERRNO_CODES.EINVAL;
  7434. }
  7435. FS.mknod(path, mode, dev);
  7436. return 0;
  7437. }),
  7438. doReadlink: (function(path, buf, bufsize) {
  7439. if (bufsize <= 0) return -ERRNO_CODES.EINVAL;
  7440. var ret = FS.readlink(path);
  7441. var len = Math.min(bufsize, lengthBytesUTF8(ret));
  7442. var endChar = HEAP8[buf + len];
  7443. stringToUTF8(ret, buf, bufsize + 1);
  7444. HEAP8[buf + len] = endChar;
  7445. return len;
  7446. }),
  7447. doAccess: (function(path, amode) {
  7448. if (amode & ~7) {
  7449. return -ERRNO_CODES.EINVAL;
  7450. }
  7451. var node;
  7452. var lookup = FS.lookupPath(path, {
  7453. follow: true
  7454. });
  7455. node = lookup.node;
  7456. var perms = "";
  7457. if (amode & 4) perms += "r";
  7458. if (amode & 2) perms += "w";
  7459. if (amode & 1) perms += "x";
  7460. if (perms && FS.nodePermissions(node, perms)) {
  7461. return -ERRNO_CODES.EACCES;
  7462. }
  7463. return 0;
  7464. }),
  7465. doDup: (function(path, flags, suggestFD) {
  7466. var suggest = FS.getStream(suggestFD);
  7467. if (suggest) FS.close(suggest);
  7468. return FS.open(path, flags, 0, suggestFD, suggestFD).fd;
  7469. }),
  7470. doReadv: (function(stream, iov, iovcnt, offset) {
  7471. var ret = 0;
  7472. for (var i = 0; i < iovcnt; i++) {
  7473. var ptr = HEAP32[iov + i * 8 >> 2];
  7474. var len = HEAP32[iov + (i * 8 + 4) >> 2];
  7475. var curr = FS.read(stream, HEAP8, ptr, len, offset);
  7476. if (curr < 0) return -1;
  7477. ret += curr;
  7478. if (curr < len) break;
  7479. }
  7480. return ret;
  7481. }),
  7482. doWritev: (function(stream, iov, iovcnt, offset) {
  7483. var ret = 0;
  7484. for (var i = 0; i < iovcnt; i++) {
  7485. var ptr = HEAP32[iov + i * 8 >> 2];
  7486. var len = HEAP32[iov + (i * 8 + 4) >> 2];
  7487. var curr = FS.write(stream, HEAP8, ptr, len, offset);
  7488. if (curr < 0) return -1;
  7489. ret += curr;
  7490. }
  7491. return ret;
  7492. }),
  7493. varargs: 0,
  7494. get: (function(varargs) {
  7495. SYSCALLS.varargs += 4;
  7496. var ret = HEAP32[SYSCALLS.varargs - 4 >> 2];
  7497. return ret;
  7498. }),
  7499. getStr: (function() {
  7500. var ret = Pointer_stringify(SYSCALLS.get());
  7501. return ret;
  7502. }),
  7503. getStreamFromFD: (function() {
  7504. var stream = FS.getStream(SYSCALLS.get());
  7505. if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  7506. return stream;
  7507. }),
  7508. getSocketFromFD: (function() {
  7509. var socket = SOCKFS.getSocket(SYSCALLS.get());
  7510. if (!socket) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  7511. return socket;
  7512. }),
  7513. getSocketAddress: (function(allowNull) {
  7514. var addrp = SYSCALLS.get(), addrlen = SYSCALLS.get();
  7515. if (allowNull && addrp === 0) return null;
  7516. var info = __read_sockaddr(addrp, addrlen);
  7517. if (info.errno) throw new FS.ErrnoError(info.errno);
  7518. info.addr = DNS.lookup_addr(info.addr) || info.addr;
  7519. return info;
  7520. }),
  7521. get64: (function() {
  7522. var low = SYSCALLS.get(), high = SYSCALLS.get();
  7523. if (low >= 0) assert(high === 0); else assert(high === -1);
  7524. return low;
  7525. }),
  7526. getZero: (function() {
  7527. assert(SYSCALLS.get() === 0);
  7528. })
  7529. };
  7530. function ___syscall10(which, varargs) {
  7531. SYSCALLS.varargs = varargs;
  7532. try {
  7533. var path = SYSCALLS.getStr();
  7534. FS.unlink(path);
  7535. return 0;
  7536. } catch (e) {
  7537. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  7538. return -e.errno;
  7539. }
  7540. }
  7541. var SOCKFS = {
  7542. mount: (function(mount) {
  7543. Module["websocket"] = Module["websocket"] && "object" === typeof Module["websocket"] ? Module["websocket"] : {};
  7544. Module["websocket"]._callbacks = {};
  7545. Module["websocket"]["on"] = (function(event, callback) {
  7546. if ("function" === typeof callback) {
  7547. this._callbacks[event] = callback;
  7548. }
  7549. return this;
  7550. });
  7551. Module["websocket"].emit = (function(event, param) {
  7552. if ("function" === typeof this._callbacks[event]) {
  7553. this._callbacks[event].call(this, param);
  7554. }
  7555. });
  7556. return FS.createNode(null, "/", 16384 | 511, 0);
  7557. }),
  7558. createSocket: (function(family, type, protocol) {
  7559. var streaming = type == 1;
  7560. if (protocol) {
  7561. assert(streaming == (protocol == 6));
  7562. }
  7563. var sock = {
  7564. family: family,
  7565. type: type,
  7566. protocol: protocol,
  7567. server: null,
  7568. error: null,
  7569. peers: {},
  7570. pending: [],
  7571. recv_queue: [],
  7572. sock_ops: SOCKFS.websocket_sock_ops
  7573. };
  7574. var name = SOCKFS.nextname();
  7575. var node = FS.createNode(SOCKFS.root, name, 49152, 0);
  7576. node.sock = sock;
  7577. var stream = FS.createStream({
  7578. path: name,
  7579. node: node,
  7580. flags: FS.modeStringToFlags("r+"),
  7581. seekable: false,
  7582. stream_ops: SOCKFS.stream_ops
  7583. });
  7584. sock.stream = stream;
  7585. return sock;
  7586. }),
  7587. getSocket: (function(fd) {
  7588. var stream = FS.getStream(fd);
  7589. if (!stream || !FS.isSocket(stream.node.mode)) {
  7590. return null;
  7591. }
  7592. return stream.node.sock;
  7593. }),
  7594. stream_ops: {
  7595. poll: (function(stream) {
  7596. var sock = stream.node.sock;
  7597. return sock.sock_ops.poll(sock);
  7598. }),
  7599. ioctl: (function(stream, request, varargs) {
  7600. var sock = stream.node.sock;
  7601. return sock.sock_ops.ioctl(sock, request, varargs);
  7602. }),
  7603. read: (function(stream, buffer, offset, length, position) {
  7604. var sock = stream.node.sock;
  7605. var msg = sock.sock_ops.recvmsg(sock, length);
  7606. if (!msg) {
  7607. return 0;
  7608. }
  7609. buffer.set(msg.buffer, offset);
  7610. return msg.buffer.length;
  7611. }),
  7612. write: (function(stream, buffer, offset, length, position) {
  7613. var sock = stream.node.sock;
  7614. return sock.sock_ops.sendmsg(sock, buffer, offset, length);
  7615. }),
  7616. close: (function(stream) {
  7617. var sock = stream.node.sock;
  7618. sock.sock_ops.close(sock);
  7619. })
  7620. },
  7621. nextname: (function() {
  7622. if (!SOCKFS.nextname.current) {
  7623. SOCKFS.nextname.current = 0;
  7624. }
  7625. return "socket[" + SOCKFS.nextname.current++ + "]";
  7626. }),
  7627. websocket_sock_ops: {
  7628. createPeer: (function(sock, addr, port) {
  7629. var ws;
  7630. if (typeof addr === "object") {
  7631. ws = addr;
  7632. addr = null;
  7633. port = null;
  7634. }
  7635. if (ws) {
  7636. if (ws._socket) {
  7637. addr = ws._socket.remoteAddress;
  7638. port = ws._socket.remotePort;
  7639. } else {
  7640. var result = /ws[s]?:\/\/([^:]+):(\d+)/.exec(ws.url);
  7641. if (!result) {
  7642. throw new Error("WebSocket URL must be in the format ws(s)://address:port");
  7643. }
  7644. addr = result[1];
  7645. port = parseInt(result[2], 10);
  7646. }
  7647. } else {
  7648. try {
  7649. var runtimeConfig = Module["websocket"] && "object" === typeof Module["websocket"];
  7650. var url = "ws:#".replace("#", "//");
  7651. if (runtimeConfig) {
  7652. if ("string" === typeof Module["websocket"]["url"]) {
  7653. url = Module["websocket"]["url"];
  7654. }
  7655. }
  7656. if (url === "ws://" || url === "wss://") {
  7657. var parts = addr.split("/");
  7658. url = url + parts[0] + ":" + port + "/" + parts.slice(1).join("/");
  7659. }
  7660. var subProtocols = "binary";
  7661. if (runtimeConfig) {
  7662. if ("string" === typeof Module["websocket"]["subprotocol"]) {
  7663. subProtocols = Module["websocket"]["subprotocol"];
  7664. }
  7665. }
  7666. subProtocols = subProtocols.replace(/^ +| +$/g, "").split(/ *, */);
  7667. var opts = ENVIRONMENT_IS_NODE ? {
  7668. "protocol": subProtocols.toString()
  7669. } : subProtocols;
  7670. if (runtimeConfig && null === Module["websocket"]["subprotocol"]) {
  7671. subProtocols = "null";
  7672. opts = undefined;
  7673. }
  7674. var WebSocketConstructor;
  7675. if (ENVIRONMENT_IS_NODE) {
  7676. WebSocketConstructor = require("ws");
  7677. } else if (ENVIRONMENT_IS_WEB) {
  7678. WebSocketConstructor = window["WebSocket"];
  7679. } else {
  7680. WebSocketConstructor = WebSocket;
  7681. }
  7682. ws = new WebSocketConstructor(url, opts);
  7683. ws.binaryType = "arraybuffer";
  7684. } catch (e) {
  7685. throw new FS.ErrnoError(ERRNO_CODES.EHOSTUNREACH);
  7686. }
  7687. }
  7688. var peer = {
  7689. addr: addr,
  7690. port: port,
  7691. socket: ws,
  7692. dgram_send_queue: []
  7693. };
  7694. SOCKFS.websocket_sock_ops.addPeer(sock, peer);
  7695. SOCKFS.websocket_sock_ops.handlePeerEvents(sock, peer);
  7696. if (sock.type === 2 && typeof sock.sport !== "undefined") {
  7697. 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 ]));
  7698. }
  7699. return peer;
  7700. }),
  7701. getPeer: (function(sock, addr, port) {
  7702. return sock.peers[addr + ":" + port];
  7703. }),
  7704. addPeer: (function(sock, peer) {
  7705. sock.peers[peer.addr + ":" + peer.port] = peer;
  7706. }),
  7707. removePeer: (function(sock, peer) {
  7708. delete sock.peers[peer.addr + ":" + peer.port];
  7709. }),
  7710. handlePeerEvents: (function(sock, peer) {
  7711. var first = true;
  7712. var handleOpen = (function() {
  7713. Module["websocket"].emit("open", sock.stream.fd);
  7714. try {
  7715. var queued = peer.dgram_send_queue.shift();
  7716. while (queued) {
  7717. peer.socket.send(queued);
  7718. queued = peer.dgram_send_queue.shift();
  7719. }
  7720. } catch (e) {
  7721. peer.socket.close();
  7722. }
  7723. });
  7724. function handleMessage(data) {
  7725. assert(typeof data !== "string" && data.byteLength !== undefined);
  7726. if (data.byteLength == 0) {
  7727. return;
  7728. }
  7729. data = new Uint8Array(data);
  7730. var wasfirst = first;
  7731. first = false;
  7732. 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)) {
  7733. var newport = data[8] << 8 | data[9];
  7734. SOCKFS.websocket_sock_ops.removePeer(sock, peer);
  7735. peer.port = newport;
  7736. SOCKFS.websocket_sock_ops.addPeer(sock, peer);
  7737. return;
  7738. }
  7739. sock.recv_queue.push({
  7740. addr: peer.addr,
  7741. port: peer.port,
  7742. data: data
  7743. });
  7744. Module["websocket"].emit("message", sock.stream.fd);
  7745. }
  7746. if (ENVIRONMENT_IS_NODE) {
  7747. peer.socket.on("open", handleOpen);
  7748. peer.socket.on("message", (function(data, flags) {
  7749. if (!flags.binary) {
  7750. return;
  7751. }
  7752. handleMessage((new Uint8Array(data)).buffer);
  7753. }));
  7754. peer.socket.on("close", (function() {
  7755. Module["websocket"].emit("close", sock.stream.fd);
  7756. }));
  7757. peer.socket.on("error", (function(error) {
  7758. sock.error = ERRNO_CODES.ECONNREFUSED;
  7759. Module["websocket"].emit("error", [ sock.stream.fd, sock.error, "ECONNREFUSED: Connection refused" ]);
  7760. }));
  7761. } else {
  7762. peer.socket.onopen = handleOpen;
  7763. peer.socket.onclose = (function() {
  7764. Module["websocket"].emit("close", sock.stream.fd);
  7765. });
  7766. peer.socket.onmessage = function peer_socket_onmessage(event) {
  7767. handleMessage(event.data);
  7768. };
  7769. peer.socket.onerror = (function(error) {
  7770. sock.error = ERRNO_CODES.ECONNREFUSED;
  7771. Module["websocket"].emit("error", [ sock.stream.fd, sock.error, "ECONNREFUSED: Connection refused" ]);
  7772. });
  7773. }
  7774. }),
  7775. poll: (function(sock) {
  7776. if (sock.type === 1 && sock.server) {
  7777. return sock.pending.length ? 64 | 1 : 0;
  7778. }
  7779. var mask = 0;
  7780. var dest = sock.type === 1 ? SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport) : null;
  7781. if (sock.recv_queue.length || !dest || dest && dest.socket.readyState === dest.socket.CLOSING || dest && dest.socket.readyState === dest.socket.CLOSED) {
  7782. mask |= 64 | 1;
  7783. }
  7784. if (!dest || dest && dest.socket.readyState === dest.socket.OPEN) {
  7785. mask |= 4;
  7786. }
  7787. if (dest && dest.socket.readyState === dest.socket.CLOSING || dest && dest.socket.readyState === dest.socket.CLOSED) {
  7788. mask |= 16;
  7789. }
  7790. return mask;
  7791. }),
  7792. ioctl: (function(sock, request, arg) {
  7793. switch (request) {
  7794. case 21531:
  7795. var bytes = 0;
  7796. if (sock.recv_queue.length) {
  7797. bytes = sock.recv_queue[0].data.length;
  7798. }
  7799. HEAP32[arg >> 2] = bytes;
  7800. return 0;
  7801. default:
  7802. return ERRNO_CODES.EINVAL;
  7803. }
  7804. }),
  7805. close: (function(sock) {
  7806. if (sock.server) {
  7807. try {
  7808. sock.server.close();
  7809. } catch (e) {}
  7810. sock.server = null;
  7811. }
  7812. var peers = Object.keys(sock.peers);
  7813. for (var i = 0; i < peers.length; i++) {
  7814. var peer = sock.peers[peers[i]];
  7815. try {
  7816. peer.socket.close();
  7817. } catch (e) {}
  7818. SOCKFS.websocket_sock_ops.removePeer(sock, peer);
  7819. }
  7820. return 0;
  7821. }),
  7822. bind: (function(sock, addr, port) {
  7823. if (typeof sock.saddr !== "undefined" || typeof sock.sport !== "undefined") {
  7824. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  7825. }
  7826. sock.saddr = addr;
  7827. sock.sport = port;
  7828. if (sock.type === 2) {
  7829. if (sock.server) {
  7830. sock.server.close();
  7831. sock.server = null;
  7832. }
  7833. try {
  7834. sock.sock_ops.listen(sock, 0);
  7835. } catch (e) {
  7836. if (!(e instanceof FS.ErrnoError)) throw e;
  7837. if (e.errno !== ERRNO_CODES.EOPNOTSUPP) throw e;
  7838. }
  7839. }
  7840. }),
  7841. connect: (function(sock, addr, port) {
  7842. if (sock.server) {
  7843. throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);
  7844. }
  7845. if (typeof sock.daddr !== "undefined" && typeof sock.dport !== "undefined") {
  7846. var dest = SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport);
  7847. if (dest) {
  7848. if (dest.socket.readyState === dest.socket.CONNECTING) {
  7849. throw new FS.ErrnoError(ERRNO_CODES.EALREADY);
  7850. } else {
  7851. throw new FS.ErrnoError(ERRNO_CODES.EISCONN);
  7852. }
  7853. }
  7854. }
  7855. var peer = SOCKFS.websocket_sock_ops.createPeer(sock, addr, port);
  7856. sock.daddr = peer.addr;
  7857. sock.dport = peer.port;
  7858. throw new FS.ErrnoError(ERRNO_CODES.EINPROGRESS);
  7859. }),
  7860. listen: (function(sock, backlog) {
  7861. if (!ENVIRONMENT_IS_NODE) {
  7862. throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);
  7863. }
  7864. if (sock.server) {
  7865. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  7866. }
  7867. var WebSocketServer = require("ws").Server;
  7868. var host = sock.saddr;
  7869. sock.server = new WebSocketServer({
  7870. host: host,
  7871. port: sock.sport
  7872. });
  7873. Module["websocket"].emit("listen", sock.stream.fd);
  7874. sock.server.on("connection", (function(ws) {
  7875. if (sock.type === 1) {
  7876. var newsock = SOCKFS.createSocket(sock.family, sock.type, sock.protocol);
  7877. var peer = SOCKFS.websocket_sock_ops.createPeer(newsock, ws);
  7878. newsock.daddr = peer.addr;
  7879. newsock.dport = peer.port;
  7880. sock.pending.push(newsock);
  7881. Module["websocket"].emit("connection", newsock.stream.fd);
  7882. } else {
  7883. SOCKFS.websocket_sock_ops.createPeer(sock, ws);
  7884. Module["websocket"].emit("connection", sock.stream.fd);
  7885. }
  7886. }));
  7887. sock.server.on("closed", (function() {
  7888. Module["websocket"].emit("close", sock.stream.fd);
  7889. sock.server = null;
  7890. }));
  7891. sock.server.on("error", (function(error) {
  7892. sock.error = ERRNO_CODES.EHOSTUNREACH;
  7893. Module["websocket"].emit("error", [ sock.stream.fd, sock.error, "EHOSTUNREACH: Host is unreachable" ]);
  7894. }));
  7895. }),
  7896. accept: (function(listensock) {
  7897. if (!listensock.server) {
  7898. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  7899. }
  7900. var newsock = listensock.pending.shift();
  7901. newsock.stream.flags = listensock.stream.flags;
  7902. return newsock;
  7903. }),
  7904. getname: (function(sock, peer) {
  7905. var addr, port;
  7906. if (peer) {
  7907. if (sock.daddr === undefined || sock.dport === undefined) {
  7908. throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN);
  7909. }
  7910. addr = sock.daddr;
  7911. port = sock.dport;
  7912. } else {
  7913. addr = sock.saddr || 0;
  7914. port = sock.sport || 0;
  7915. }
  7916. return {
  7917. addr: addr,
  7918. port: port
  7919. };
  7920. }),
  7921. sendmsg: (function(sock, buffer, offset, length, addr, port) {
  7922. if (sock.type === 2) {
  7923. if (addr === undefined || port === undefined) {
  7924. addr = sock.daddr;
  7925. port = sock.dport;
  7926. }
  7927. if (addr === undefined || port === undefined) {
  7928. throw new FS.ErrnoError(ERRNO_CODES.EDESTADDRREQ);
  7929. }
  7930. } else {
  7931. addr = sock.daddr;
  7932. port = sock.dport;
  7933. }
  7934. var dest = SOCKFS.websocket_sock_ops.getPeer(sock, addr, port);
  7935. if (sock.type === 1) {
  7936. if (!dest || dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) {
  7937. throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN);
  7938. } else if (dest.socket.readyState === dest.socket.CONNECTING) {
  7939. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  7940. }
  7941. }
  7942. if (ArrayBuffer.isView(buffer)) {
  7943. offset += buffer.byteOffset;
  7944. buffer = buffer.buffer;
  7945. }
  7946. var data;
  7947. data = buffer.slice(offset, offset + length);
  7948. if (sock.type === 2) {
  7949. if (!dest || dest.socket.readyState !== dest.socket.OPEN) {
  7950. if (!dest || dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) {
  7951. dest = SOCKFS.websocket_sock_ops.createPeer(sock, addr, port);
  7952. }
  7953. dest.dgram_send_queue.push(data);
  7954. return length;
  7955. }
  7956. }
  7957. try {
  7958. dest.socket.send(data);
  7959. return length;
  7960. } catch (e) {
  7961. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  7962. }
  7963. }),
  7964. recvmsg: (function(sock, length) {
  7965. if (sock.type === 1 && sock.server) {
  7966. throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN);
  7967. }
  7968. var queued = sock.recv_queue.shift();
  7969. if (!queued) {
  7970. if (sock.type === 1) {
  7971. var dest = SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport);
  7972. if (!dest) {
  7973. throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN);
  7974. } else if (dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) {
  7975. return null;
  7976. } else {
  7977. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  7978. }
  7979. } else {
  7980. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  7981. }
  7982. }
  7983. var queuedLength = queued.data.byteLength || queued.data.length;
  7984. var queuedOffset = queued.data.byteOffset || 0;
  7985. var queuedBuffer = queued.data.buffer || queued.data;
  7986. var bytesRead = Math.min(length, queuedLength);
  7987. var res = {
  7988. buffer: new Uint8Array(queuedBuffer, queuedOffset, bytesRead),
  7989. addr: queued.addr,
  7990. port: queued.port
  7991. };
  7992. if (sock.type === 1 && bytesRead < queuedLength) {
  7993. var bytesRemaining = queuedLength - bytesRead;
  7994. queued.data = new Uint8Array(queuedBuffer, queuedOffset + bytesRead, bytesRemaining);
  7995. sock.recv_queue.unshift(queued);
  7996. }
  7997. return res;
  7998. })
  7999. }
  8000. };
  8001. function __inet_pton4_raw(str) {
  8002. var b = str.split(".");
  8003. for (var i = 0; i < 4; i++) {
  8004. var tmp = Number(b[i]);
  8005. if (isNaN(tmp)) return null;
  8006. b[i] = tmp;
  8007. }
  8008. return (b[0] | b[1] << 8 | b[2] << 16 | b[3] << 24) >>> 0;
  8009. }
  8010. function __inet_pton6_raw(str) {
  8011. var words;
  8012. var w, offset, z;
  8013. 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;
  8014. var parts = [];
  8015. if (!valid6regx.test(str)) {
  8016. return null;
  8017. }
  8018. if (str === "::") {
  8019. return [ 0, 0, 0, 0, 0, 0, 0, 0 ];
  8020. }
  8021. if (str.indexOf("::") === 0) {
  8022. str = str.replace("::", "Z:");
  8023. } else {
  8024. str = str.replace("::", ":Z:");
  8025. }
  8026. if (str.indexOf(".") > 0) {
  8027. str = str.replace(new RegExp("[.]", "g"), ":");
  8028. words = str.split(":");
  8029. words[words.length - 4] = parseInt(words[words.length - 4]) + parseInt(words[words.length - 3]) * 256;
  8030. words[words.length - 3] = parseInt(words[words.length - 2]) + parseInt(words[words.length - 1]) * 256;
  8031. words = words.slice(0, words.length - 2);
  8032. } else {
  8033. words = str.split(":");
  8034. }
  8035. offset = 0;
  8036. z = 0;
  8037. for (w = 0; w < words.length; w++) {
  8038. if (typeof words[w] === "string") {
  8039. if (words[w] === "Z") {
  8040. for (z = 0; z < 8 - words.length + 1; z++) {
  8041. parts[w + z] = 0;
  8042. }
  8043. offset = z - 1;
  8044. } else {
  8045. parts[w + offset] = _htons(parseInt(words[w], 16));
  8046. }
  8047. } else {
  8048. parts[w + offset] = words[w];
  8049. }
  8050. }
  8051. return [ parts[1] << 16 | parts[0], parts[3] << 16 | parts[2], parts[5] << 16 | parts[4], parts[7] << 16 | parts[6] ];
  8052. }
  8053. var DNS = {
  8054. address_map: {
  8055. id: 1,
  8056. addrs: {},
  8057. names: {}
  8058. },
  8059. lookup_name: (function(name) {
  8060. var res = __inet_pton4_raw(name);
  8061. if (res !== null) {
  8062. return name;
  8063. }
  8064. res = __inet_pton6_raw(name);
  8065. if (res !== null) {
  8066. return name;
  8067. }
  8068. var addr;
  8069. if (DNS.address_map.addrs[name]) {
  8070. addr = DNS.address_map.addrs[name];
  8071. } else {
  8072. var id = DNS.address_map.id++;
  8073. assert(id < 65535, "exceeded max address mappings of 65535");
  8074. addr = "172.29." + (id & 255) + "." + (id & 65280);
  8075. DNS.address_map.names[addr] = name;
  8076. DNS.address_map.addrs[name] = addr;
  8077. }
  8078. return addr;
  8079. }),
  8080. lookup_addr: (function(addr) {
  8081. if (DNS.address_map.names[addr]) {
  8082. return DNS.address_map.names[addr];
  8083. }
  8084. return null;
  8085. })
  8086. };
  8087. function __inet_ntop4_raw(addr) {
  8088. return (addr & 255) + "." + (addr >> 8 & 255) + "." + (addr >> 16 & 255) + "." + (addr >> 24 & 255);
  8089. }
  8090. function __inet_ntop6_raw(ints) {
  8091. var str = "";
  8092. var word = 0;
  8093. var longest = 0;
  8094. var lastzero = 0;
  8095. var zstart = 0;
  8096. var len = 0;
  8097. var i = 0;
  8098. 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 ];
  8099. var hasipv4 = true;
  8100. var v4part = "";
  8101. for (i = 0; i < 5; i++) {
  8102. if (parts[i] !== 0) {
  8103. hasipv4 = false;
  8104. break;
  8105. }
  8106. }
  8107. if (hasipv4) {
  8108. v4part = __inet_ntop4_raw(parts[6] | parts[7] << 16);
  8109. if (parts[5] === -1) {
  8110. str = "::ffff:";
  8111. str += v4part;
  8112. return str;
  8113. }
  8114. if (parts[5] === 0) {
  8115. str = "::";
  8116. if (v4part === "0.0.0.0") v4part = "";
  8117. if (v4part === "0.0.0.1") v4part = "1";
  8118. str += v4part;
  8119. return str;
  8120. }
  8121. }
  8122. for (word = 0; word < 8; word++) {
  8123. if (parts[word] === 0) {
  8124. if (word - lastzero > 1) {
  8125. len = 0;
  8126. }
  8127. lastzero = word;
  8128. len++;
  8129. }
  8130. if (len > longest) {
  8131. longest = len;
  8132. zstart = word - longest + 1;
  8133. }
  8134. }
  8135. for (word = 0; word < 8; word++) {
  8136. if (longest > 1) {
  8137. if (parts[word] === 0 && word >= zstart && word < zstart + longest) {
  8138. if (word === zstart) {
  8139. str += ":";
  8140. if (zstart === 0) str += ":";
  8141. }
  8142. continue;
  8143. }
  8144. }
  8145. str += Number(_ntohs(parts[word] & 65535)).toString(16);
  8146. str += word < 7 ? ":" : "";
  8147. }
  8148. return str;
  8149. }
  8150. function __read_sockaddr(sa, salen) {
  8151. var family = HEAP16[sa >> 1];
  8152. var port = _ntohs(HEAP16[sa + 2 >> 1]);
  8153. var addr;
  8154. switch (family) {
  8155. case 2:
  8156. if (salen !== 16) {
  8157. return {
  8158. errno: ERRNO_CODES.EINVAL
  8159. };
  8160. }
  8161. addr = HEAP32[sa + 4 >> 2];
  8162. addr = __inet_ntop4_raw(addr);
  8163. break;
  8164. case 10:
  8165. if (salen !== 28) {
  8166. return {
  8167. errno: ERRNO_CODES.EINVAL
  8168. };
  8169. }
  8170. addr = [ HEAP32[sa + 8 >> 2], HEAP32[sa + 12 >> 2], HEAP32[sa + 16 >> 2], HEAP32[sa + 20 >> 2] ];
  8171. addr = __inet_ntop6_raw(addr);
  8172. break;
  8173. default:
  8174. return {
  8175. errno: ERRNO_CODES.EAFNOSUPPORT
  8176. };
  8177. }
  8178. return {
  8179. family: family,
  8180. addr: addr,
  8181. port: port
  8182. };
  8183. }
  8184. function __write_sockaddr(sa, family, addr, port) {
  8185. switch (family) {
  8186. case 2:
  8187. addr = __inet_pton4_raw(addr);
  8188. HEAP16[sa >> 1] = family;
  8189. HEAP32[sa + 4 >> 2] = addr;
  8190. HEAP16[sa + 2 >> 1] = _htons(port);
  8191. break;
  8192. case 10:
  8193. addr = __inet_pton6_raw(addr);
  8194. HEAP32[sa >> 2] = family;
  8195. HEAP32[sa + 8 >> 2] = addr[0];
  8196. HEAP32[sa + 12 >> 2] = addr[1];
  8197. HEAP32[sa + 16 >> 2] = addr[2];
  8198. HEAP32[sa + 20 >> 2] = addr[3];
  8199. HEAP16[sa + 2 >> 1] = _htons(port);
  8200. HEAP32[sa + 4 >> 2] = 0;
  8201. HEAP32[sa + 24 >> 2] = 0;
  8202. break;
  8203. default:
  8204. return {
  8205. errno: ERRNO_CODES.EAFNOSUPPORT
  8206. };
  8207. }
  8208. return {};
  8209. }
  8210. function ___syscall102(which, varargs) {
  8211. SYSCALLS.varargs = varargs;
  8212. try {
  8213. var call = SYSCALLS.get(), socketvararg = SYSCALLS.get();
  8214. SYSCALLS.varargs = socketvararg;
  8215. switch (call) {
  8216. case 1:
  8217. {
  8218. var domain = SYSCALLS.get(), type = SYSCALLS.get(), protocol = SYSCALLS.get();
  8219. var sock = SOCKFS.createSocket(domain, type, protocol);
  8220. assert(sock.stream.fd < 64);
  8221. return sock.stream.fd;
  8222. }
  8223. case 2:
  8224. {
  8225. var sock = SYSCALLS.getSocketFromFD(), info = SYSCALLS.getSocketAddress();
  8226. sock.sock_ops.bind(sock, info.addr, info.port);
  8227. return 0;
  8228. }
  8229. case 3:
  8230. {
  8231. var sock = SYSCALLS.getSocketFromFD(), info = SYSCALLS.getSocketAddress();
  8232. sock.sock_ops.connect(sock, info.addr, info.port);
  8233. return 0;
  8234. }
  8235. case 4:
  8236. {
  8237. var sock = SYSCALLS.getSocketFromFD(), backlog = SYSCALLS.get();
  8238. sock.sock_ops.listen(sock, backlog);
  8239. return 0;
  8240. }
  8241. case 5:
  8242. {
  8243. var sock = SYSCALLS.getSocketFromFD(), addr = SYSCALLS.get(), addrlen = SYSCALLS.get();
  8244. var newsock = sock.sock_ops.accept(sock);
  8245. if (addr) {
  8246. var res = __write_sockaddr(addr, newsock.family, DNS.lookup_name(newsock.daddr), newsock.dport);
  8247. assert(!res.errno);
  8248. }
  8249. return newsock.stream.fd;
  8250. }
  8251. case 6:
  8252. {
  8253. var sock = SYSCALLS.getSocketFromFD(), addr = SYSCALLS.get(), addrlen = SYSCALLS.get();
  8254. var res = __write_sockaddr(addr, sock.family, DNS.lookup_name(sock.saddr || "0.0.0.0"), sock.sport);
  8255. assert(!res.errno);
  8256. return 0;
  8257. }
  8258. case 7:
  8259. {
  8260. var sock = SYSCALLS.getSocketFromFD(), addr = SYSCALLS.get(), addrlen = SYSCALLS.get();
  8261. if (!sock.daddr) {
  8262. return -ERRNO_CODES.ENOTCONN;
  8263. }
  8264. var res = __write_sockaddr(addr, sock.family, DNS.lookup_name(sock.daddr), sock.dport);
  8265. assert(!res.errno);
  8266. return 0;
  8267. }
  8268. case 11:
  8269. {
  8270. var sock = SYSCALLS.getSocketFromFD(), message = SYSCALLS.get(), length = SYSCALLS.get(), flags = SYSCALLS.get(), dest = SYSCALLS.getSocketAddress(true);
  8271. if (!dest) {
  8272. return FS.write(sock.stream, HEAP8, message, length);
  8273. } else {
  8274. return sock.sock_ops.sendmsg(sock, HEAP8, message, length, dest.addr, dest.port);
  8275. }
  8276. }
  8277. case 12:
  8278. {
  8279. var sock = SYSCALLS.getSocketFromFD(), buf = SYSCALLS.get(), len = SYSCALLS.get(), flags = SYSCALLS.get(), addr = SYSCALLS.get(), addrlen = SYSCALLS.get();
  8280. var msg = sock.sock_ops.recvmsg(sock, len);
  8281. if (!msg) return 0;
  8282. if (addr) {
  8283. var res = __write_sockaddr(addr, sock.family, DNS.lookup_name(msg.addr), msg.port);
  8284. assert(!res.errno);
  8285. }
  8286. HEAPU8.set(msg.buffer, buf);
  8287. return msg.buffer.byteLength;
  8288. }
  8289. case 14:
  8290. {
  8291. return -ERRNO_CODES.ENOPROTOOPT;
  8292. }
  8293. case 15:
  8294. {
  8295. var sock = SYSCALLS.getSocketFromFD(), level = SYSCALLS.get(), optname = SYSCALLS.get(), optval = SYSCALLS.get(), optlen = SYSCALLS.get();
  8296. if (level === 1) {
  8297. if (optname === 4) {
  8298. HEAP32[optval >> 2] = sock.error;
  8299. HEAP32[optlen >> 2] = 4;
  8300. sock.error = null;
  8301. return 0;
  8302. }
  8303. }
  8304. return -ERRNO_CODES.ENOPROTOOPT;
  8305. }
  8306. case 16:
  8307. {
  8308. var sock = SYSCALLS.getSocketFromFD(), message = SYSCALLS.get(), flags = SYSCALLS.get();
  8309. var iov = HEAP32[message + 8 >> 2];
  8310. var num = HEAP32[message + 12 >> 2];
  8311. var addr, port;
  8312. var name = HEAP32[message >> 2];
  8313. var namelen = HEAP32[message + 4 >> 2];
  8314. if (name) {
  8315. var info = __read_sockaddr(name, namelen);
  8316. if (info.errno) return -info.errno;
  8317. port = info.port;
  8318. addr = DNS.lookup_addr(info.addr) || info.addr;
  8319. }
  8320. var total = 0;
  8321. for (var i = 0; i < num; i++) {
  8322. total += HEAP32[iov + (8 * i + 4) >> 2];
  8323. }
  8324. var view = new Uint8Array(total);
  8325. var offset = 0;
  8326. for (var i = 0; i < num; i++) {
  8327. var iovbase = HEAP32[iov + (8 * i + 0) >> 2];
  8328. var iovlen = HEAP32[iov + (8 * i + 4) >> 2];
  8329. for (var j = 0; j < iovlen; j++) {
  8330. view[offset++] = HEAP8[iovbase + j >> 0];
  8331. }
  8332. }
  8333. return sock.sock_ops.sendmsg(sock, view, 0, total, addr, port);
  8334. }
  8335. case 17:
  8336. {
  8337. var sock = SYSCALLS.getSocketFromFD(), message = SYSCALLS.get(), flags = SYSCALLS.get();
  8338. var iov = HEAP32[message + 8 >> 2];
  8339. var num = HEAP32[message + 12 >> 2];
  8340. var total = 0;
  8341. for (var i = 0; i < num; i++) {
  8342. total += HEAP32[iov + (8 * i + 4) >> 2];
  8343. }
  8344. var msg = sock.sock_ops.recvmsg(sock, total);
  8345. if (!msg) return 0;
  8346. var name = HEAP32[message >> 2];
  8347. if (name) {
  8348. var res = __write_sockaddr(name, sock.family, DNS.lookup_name(msg.addr), msg.port);
  8349. assert(!res.errno);
  8350. }
  8351. var bytesRead = 0;
  8352. var bytesRemaining = msg.buffer.byteLength;
  8353. for (var i = 0; bytesRemaining > 0 && i < num; i++) {
  8354. var iovbase = HEAP32[iov + (8 * i + 0) >> 2];
  8355. var iovlen = HEAP32[iov + (8 * i + 4) >> 2];
  8356. if (!iovlen) {
  8357. continue;
  8358. }
  8359. var length = Math.min(iovlen, bytesRemaining);
  8360. var buf = msg.buffer.subarray(bytesRead, bytesRead + length);
  8361. HEAPU8.set(buf, iovbase + bytesRead);
  8362. bytesRead += length;
  8363. bytesRemaining -= length;
  8364. }
  8365. return bytesRead;
  8366. }
  8367. default:
  8368. abort("unsupported socketcall syscall " + call);
  8369. }
  8370. } catch (e) {
  8371. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8372. return -e.errno;
  8373. }
  8374. }
  8375. function ___syscall122(which, varargs) {
  8376. SYSCALLS.varargs = varargs;
  8377. try {
  8378. var buf = SYSCALLS.get();
  8379. if (!buf) return -ERRNO_CODES.EFAULT;
  8380. var layout = {
  8381. "sysname": 0,
  8382. "nodename": 65,
  8383. "domainname": 325,
  8384. "machine": 260,
  8385. "version": 195,
  8386. "release": 130,
  8387. "__size__": 390
  8388. };
  8389. function copyString(element, value) {
  8390. var offset = layout[element];
  8391. writeAsciiToMemory(value, buf + offset);
  8392. }
  8393. copyString("sysname", "Emscripten");
  8394. copyString("nodename", "emscripten");
  8395. copyString("release", "1.0");
  8396. copyString("version", "#1");
  8397. copyString("machine", "x86-JS");
  8398. return 0;
  8399. } catch (e) {
  8400. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8401. return -e.errno;
  8402. }
  8403. }
  8404. function ___syscall140(which, varargs) {
  8405. SYSCALLS.varargs = varargs;
  8406. try {
  8407. var stream = SYSCALLS.getStreamFromFD(), offset_high = SYSCALLS.get(), offset_low = SYSCALLS.get(), result = SYSCALLS.get(), whence = SYSCALLS.get();
  8408. var offset = offset_low;
  8409. FS.llseek(stream, offset, whence);
  8410. HEAP32[result >> 2] = stream.position;
  8411. if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null;
  8412. return 0;
  8413. } catch (e) {
  8414. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8415. return -e.errno;
  8416. }
  8417. }
  8418. function ___syscall142(which, varargs) {
  8419. SYSCALLS.varargs = varargs;
  8420. try {
  8421. var nfds = SYSCALLS.get(), readfds = SYSCALLS.get(), writefds = SYSCALLS.get(), exceptfds = SYSCALLS.get(), timeout = SYSCALLS.get();
  8422. assert(nfds <= 64, "nfds must be less than or equal to 64");
  8423. assert(!exceptfds, "exceptfds not supported");
  8424. var total = 0;
  8425. var srcReadLow = readfds ? HEAP32[readfds >> 2] : 0, srcReadHigh = readfds ? HEAP32[readfds + 4 >> 2] : 0;
  8426. var srcWriteLow = writefds ? HEAP32[writefds >> 2] : 0, srcWriteHigh = writefds ? HEAP32[writefds + 4 >> 2] : 0;
  8427. var srcExceptLow = exceptfds ? HEAP32[exceptfds >> 2] : 0, srcExceptHigh = exceptfds ? HEAP32[exceptfds + 4 >> 2] : 0;
  8428. var dstReadLow = 0, dstReadHigh = 0;
  8429. var dstWriteLow = 0, dstWriteHigh = 0;
  8430. var dstExceptLow = 0, dstExceptHigh = 0;
  8431. var allLow = (readfds ? HEAP32[readfds >> 2] : 0) | (writefds ? HEAP32[writefds >> 2] : 0) | (exceptfds ? HEAP32[exceptfds >> 2] : 0);
  8432. var allHigh = (readfds ? HEAP32[readfds + 4 >> 2] : 0) | (writefds ? HEAP32[writefds + 4 >> 2] : 0) | (exceptfds ? HEAP32[exceptfds + 4 >> 2] : 0);
  8433. function check(fd, low, high, val) {
  8434. return fd < 32 ? low & val : high & val;
  8435. }
  8436. for (var fd = 0; fd < nfds; fd++) {
  8437. var mask = 1 << fd % 32;
  8438. if (!check(fd, allLow, allHigh, mask)) {
  8439. continue;
  8440. }
  8441. var stream = FS.getStream(fd);
  8442. if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  8443. var flags = SYSCALLS.DEFAULT_POLLMASK;
  8444. if (stream.stream_ops.poll) {
  8445. flags = stream.stream_ops.poll(stream);
  8446. }
  8447. if (flags & 1 && check(fd, srcReadLow, srcReadHigh, mask)) {
  8448. fd < 32 ? dstReadLow = dstReadLow | mask : dstReadHigh = dstReadHigh | mask;
  8449. total++;
  8450. }
  8451. if (flags & 4 && check(fd, srcWriteLow, srcWriteHigh, mask)) {
  8452. fd < 32 ? dstWriteLow = dstWriteLow | mask : dstWriteHigh = dstWriteHigh | mask;
  8453. total++;
  8454. }
  8455. if (flags & 2 && check(fd, srcExceptLow, srcExceptHigh, mask)) {
  8456. fd < 32 ? dstExceptLow = dstExceptLow | mask : dstExceptHigh = dstExceptHigh | mask;
  8457. total++;
  8458. }
  8459. }
  8460. if (readfds) {
  8461. HEAP32[readfds >> 2] = dstReadLow;
  8462. HEAP32[readfds + 4 >> 2] = dstReadHigh;
  8463. }
  8464. if (writefds) {
  8465. HEAP32[writefds >> 2] = dstWriteLow;
  8466. HEAP32[writefds + 4 >> 2] = dstWriteHigh;
  8467. }
  8468. if (exceptfds) {
  8469. HEAP32[exceptfds >> 2] = dstExceptLow;
  8470. HEAP32[exceptfds + 4 >> 2] = dstExceptHigh;
  8471. }
  8472. return total;
  8473. } catch (e) {
  8474. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8475. return -e.errno;
  8476. }
  8477. }
  8478. function ___syscall145(which, varargs) {
  8479. SYSCALLS.varargs = varargs;
  8480. try {
  8481. var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get();
  8482. return SYSCALLS.doReadv(stream, iov, iovcnt);
  8483. } catch (e) {
  8484. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8485. return -e.errno;
  8486. }
  8487. }
  8488. function ___syscall146(which, varargs) {
  8489. SYSCALLS.varargs = varargs;
  8490. try {
  8491. var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get();
  8492. return SYSCALLS.doWritev(stream, iov, iovcnt);
  8493. } catch (e) {
  8494. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8495. return -e.errno;
  8496. }
  8497. }
  8498. function ___syscall15(which, varargs) {
  8499. SYSCALLS.varargs = varargs;
  8500. try {
  8501. var path = SYSCALLS.getStr(), mode = SYSCALLS.get();
  8502. FS.chmod(path, mode);
  8503. return 0;
  8504. } catch (e) {
  8505. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8506. return -e.errno;
  8507. }
  8508. }
  8509. function ___syscall183(which, varargs) {
  8510. SYSCALLS.varargs = varargs;
  8511. try {
  8512. var buf = SYSCALLS.get(), size = SYSCALLS.get();
  8513. if (size === 0) return -ERRNO_CODES.EINVAL;
  8514. var cwd = FS.cwd();
  8515. var cwdLengthInBytes = lengthBytesUTF8(cwd);
  8516. if (size < cwdLengthInBytes + 1) return -ERRNO_CODES.ERANGE;
  8517. stringToUTF8(cwd, buf, size);
  8518. return buf;
  8519. } catch (e) {
  8520. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8521. return -e.errno;
  8522. }
  8523. }
  8524. function ___syscall192(which, varargs) {
  8525. SYSCALLS.varargs = varargs;
  8526. try {
  8527. var addr = SYSCALLS.get(), len = SYSCALLS.get(), prot = SYSCALLS.get(), flags = SYSCALLS.get(), fd = SYSCALLS.get(), off = SYSCALLS.get();
  8528. off <<= 12;
  8529. var ptr;
  8530. var allocated = false;
  8531. if (fd === -1) {
  8532. ptr = _memalign(PAGE_SIZE, len);
  8533. if (!ptr) return -ERRNO_CODES.ENOMEM;
  8534. _memset(ptr, 0, len);
  8535. allocated = true;
  8536. } else {
  8537. var info = FS.getStream(fd);
  8538. if (!info) return -ERRNO_CODES.EBADF;
  8539. var res = FS.mmap(info, HEAPU8, addr, len, off, prot, flags);
  8540. ptr = res.ptr;
  8541. allocated = res.allocated;
  8542. }
  8543. SYSCALLS.mappings[ptr] = {
  8544. malloc: ptr,
  8545. len: len,
  8546. allocated: allocated,
  8547. fd: fd,
  8548. flags: flags
  8549. };
  8550. return ptr;
  8551. } catch (e) {
  8552. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8553. return -e.errno;
  8554. }
  8555. }
  8556. function ___syscall193(which, varargs) {
  8557. SYSCALLS.varargs = varargs;
  8558. try {
  8559. var path = SYSCALLS.getStr(), zero = SYSCALLS.getZero(), length = SYSCALLS.get64();
  8560. FS.truncate(path, length);
  8561. return 0;
  8562. } catch (e) {
  8563. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8564. return -e.errno;
  8565. }
  8566. }
  8567. function ___syscall195(which, varargs) {
  8568. SYSCALLS.varargs = varargs;
  8569. try {
  8570. var path = SYSCALLS.getStr(), buf = SYSCALLS.get();
  8571. return SYSCALLS.doStat(FS.stat, path, buf);
  8572. } catch (e) {
  8573. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8574. return -e.errno;
  8575. }
  8576. }
  8577. function ___syscall196(which, varargs) {
  8578. SYSCALLS.varargs = varargs;
  8579. try {
  8580. var path = SYSCALLS.getStr(), buf = SYSCALLS.get();
  8581. return SYSCALLS.doStat(FS.lstat, path, buf);
  8582. } catch (e) {
  8583. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8584. return -e.errno;
  8585. }
  8586. }
  8587. function ___syscall197(which, varargs) {
  8588. SYSCALLS.varargs = varargs;
  8589. try {
  8590. var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get();
  8591. return SYSCALLS.doStat(FS.stat, stream.path, buf);
  8592. } catch (e) {
  8593. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8594. return -e.errno;
  8595. }
  8596. }
  8597. function ___syscall202(which, varargs) {
  8598. SYSCALLS.varargs = varargs;
  8599. try {
  8600. return 0;
  8601. } catch (e) {
  8602. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8603. return -e.errno;
  8604. }
  8605. }
  8606. function ___syscall199() {
  8607. return ___syscall202.apply(null, arguments);
  8608. }
  8609. function ___syscall220(which, varargs) {
  8610. SYSCALLS.varargs = varargs;
  8611. try {
  8612. var stream = SYSCALLS.getStreamFromFD(), dirp = SYSCALLS.get(), count = SYSCALLS.get();
  8613. if (!stream.getdents) {
  8614. stream.getdents = FS.readdir(stream.path);
  8615. }
  8616. var pos = 0;
  8617. while (stream.getdents.length > 0 && pos + 268 <= count) {
  8618. var id;
  8619. var type;
  8620. var name = stream.getdents.pop();
  8621. if (name[0] === ".") {
  8622. id = 1;
  8623. type = 4;
  8624. } else {
  8625. var child = FS.lookupNode(stream.node, name);
  8626. id = child.id;
  8627. type = FS.isChrdev(child.mode) ? 2 : FS.isDir(child.mode) ? 4 : FS.isLink(child.mode) ? 10 : 8;
  8628. }
  8629. HEAP32[dirp + pos >> 2] = id;
  8630. HEAP32[dirp + pos + 4 >> 2] = stream.position;
  8631. HEAP16[dirp + pos + 8 >> 1] = 268;
  8632. HEAP8[dirp + pos + 10 >> 0] = type;
  8633. stringToUTF8(name, dirp + pos + 11, 256);
  8634. pos += 268;
  8635. }
  8636. return pos;
  8637. } catch (e) {
  8638. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8639. return -e.errno;
  8640. }
  8641. }
  8642. function ___syscall221(which, varargs) {
  8643. SYSCALLS.varargs = varargs;
  8644. try {
  8645. var stream = SYSCALLS.getStreamFromFD(), cmd = SYSCALLS.get();
  8646. switch (cmd) {
  8647. case 0:
  8648. {
  8649. var arg = SYSCALLS.get();
  8650. if (arg < 0) {
  8651. return -ERRNO_CODES.EINVAL;
  8652. }
  8653. var newStream;
  8654. newStream = FS.open(stream.path, stream.flags, 0, arg);
  8655. return newStream.fd;
  8656. }
  8657. case 1:
  8658. case 2:
  8659. return 0;
  8660. case 3:
  8661. return stream.flags;
  8662. case 4:
  8663. {
  8664. var arg = SYSCALLS.get();
  8665. stream.flags |= arg;
  8666. return 0;
  8667. }
  8668. case 12:
  8669. case 12:
  8670. {
  8671. var arg = SYSCALLS.get();
  8672. var offset = 0;
  8673. HEAP16[arg + offset >> 1] = 2;
  8674. return 0;
  8675. }
  8676. case 13:
  8677. case 14:
  8678. case 13:
  8679. case 14:
  8680. return 0;
  8681. case 16:
  8682. case 8:
  8683. return -ERRNO_CODES.EINVAL;
  8684. case 9:
  8685. ___setErrNo(ERRNO_CODES.EINVAL);
  8686. return -1;
  8687. default:
  8688. {
  8689. return -ERRNO_CODES.EINVAL;
  8690. }
  8691. }
  8692. } catch (e) {
  8693. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8694. return -e.errno;
  8695. }
  8696. }
  8697. function ___syscall268(which, varargs) {
  8698. SYSCALLS.varargs = varargs;
  8699. try {
  8700. var path = SYSCALLS.getStr(), size = SYSCALLS.get(), buf = SYSCALLS.get();
  8701. assert(size === 64);
  8702. HEAP32[buf + 4 >> 2] = 4096;
  8703. HEAP32[buf + 40 >> 2] = 4096;
  8704. HEAP32[buf + 8 >> 2] = 1e6;
  8705. HEAP32[buf + 12 >> 2] = 5e5;
  8706. HEAP32[buf + 16 >> 2] = 5e5;
  8707. HEAP32[buf + 20 >> 2] = FS.nextInode;
  8708. HEAP32[buf + 24 >> 2] = 1e6;
  8709. HEAP32[buf + 28 >> 2] = 42;
  8710. HEAP32[buf + 44 >> 2] = 2;
  8711. HEAP32[buf + 36 >> 2] = 255;
  8712. return 0;
  8713. } catch (e) {
  8714. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8715. return -e.errno;
  8716. }
  8717. }
  8718. function ___syscall3(which, varargs) {
  8719. SYSCALLS.varargs = varargs;
  8720. try {
  8721. var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get();
  8722. return FS.read(stream, HEAP8, buf, count);
  8723. } catch (e) {
  8724. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8725. return -e.errno;
  8726. }
  8727. }
  8728. function ___syscall33(which, varargs) {
  8729. SYSCALLS.varargs = varargs;
  8730. try {
  8731. var path = SYSCALLS.getStr(), amode = SYSCALLS.get();
  8732. return SYSCALLS.doAccess(path, amode);
  8733. } catch (e) {
  8734. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8735. return -e.errno;
  8736. }
  8737. }
  8738. function ___syscall38(which, varargs) {
  8739. SYSCALLS.varargs = varargs;
  8740. try {
  8741. var old_path = SYSCALLS.getStr(), new_path = SYSCALLS.getStr();
  8742. FS.rename(old_path, new_path);
  8743. return 0;
  8744. } catch (e) {
  8745. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8746. return -e.errno;
  8747. }
  8748. }
  8749. function ___syscall39(which, varargs) {
  8750. SYSCALLS.varargs = varargs;
  8751. try {
  8752. var path = SYSCALLS.getStr(), mode = SYSCALLS.get();
  8753. return SYSCALLS.doMkdir(path, mode);
  8754. } catch (e) {
  8755. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8756. return -e.errno;
  8757. }
  8758. }
  8759. function ___syscall4(which, varargs) {
  8760. SYSCALLS.varargs = varargs;
  8761. try {
  8762. var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get();
  8763. return FS.write(stream, HEAP8, buf, count);
  8764. } catch (e) {
  8765. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8766. return -e.errno;
  8767. }
  8768. }
  8769. function ___syscall40(which, varargs) {
  8770. SYSCALLS.varargs = varargs;
  8771. try {
  8772. var path = SYSCALLS.getStr();
  8773. FS.rmdir(path);
  8774. return 0;
  8775. } catch (e) {
  8776. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8777. return -e.errno;
  8778. }
  8779. }
  8780. function ___syscall5(which, varargs) {
  8781. SYSCALLS.varargs = varargs;
  8782. try {
  8783. var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = SYSCALLS.get();
  8784. var stream = FS.open(pathname, flags, mode);
  8785. return stream.fd;
  8786. } catch (e) {
  8787. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8788. return -e.errno;
  8789. }
  8790. }
  8791. function ___syscall54(which, varargs) {
  8792. SYSCALLS.varargs = varargs;
  8793. try {
  8794. var stream = SYSCALLS.getStreamFromFD(), op = SYSCALLS.get();
  8795. switch (op) {
  8796. case 21509:
  8797. case 21505:
  8798. {
  8799. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  8800. return 0;
  8801. }
  8802. case 21510:
  8803. case 21511:
  8804. case 21512:
  8805. case 21506:
  8806. case 21507:
  8807. case 21508:
  8808. {
  8809. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  8810. return 0;
  8811. }
  8812. case 21519:
  8813. {
  8814. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  8815. var argp = SYSCALLS.get();
  8816. HEAP32[argp >> 2] = 0;
  8817. return 0;
  8818. }
  8819. case 21520:
  8820. {
  8821. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  8822. return -ERRNO_CODES.EINVAL;
  8823. }
  8824. case 21531:
  8825. {
  8826. var argp = SYSCALLS.get();
  8827. return FS.ioctl(stream, op, argp);
  8828. }
  8829. case 21523:
  8830. {
  8831. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  8832. return 0;
  8833. }
  8834. case 21524:
  8835. {
  8836. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  8837. return 0;
  8838. }
  8839. default:
  8840. abort("bad ioctl syscall " + op);
  8841. }
  8842. } catch (e) {
  8843. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8844. return -e.errno;
  8845. }
  8846. }
  8847. function ___syscall6(which, varargs) {
  8848. SYSCALLS.varargs = varargs;
  8849. try {
  8850. var stream = SYSCALLS.getStreamFromFD();
  8851. FS.close(stream);
  8852. return 0;
  8853. } catch (e) {
  8854. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8855. return -e.errno;
  8856. }
  8857. }
  8858. function ___syscall77(which, varargs) {
  8859. SYSCALLS.varargs = varargs;
  8860. try {
  8861. var who = SYSCALLS.get(), usage = SYSCALLS.get();
  8862. _memset(usage, 0, 136);
  8863. HEAP32[usage >> 2] = 1;
  8864. HEAP32[usage + 4 >> 2] = 2;
  8865. HEAP32[usage + 8 >> 2] = 3;
  8866. HEAP32[usage + 12 >> 2] = 4;
  8867. return 0;
  8868. } catch (e) {
  8869. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8870. return -e.errno;
  8871. }
  8872. }
  8873. function ___syscall85(which, varargs) {
  8874. SYSCALLS.varargs = varargs;
  8875. try {
  8876. var path = SYSCALLS.getStr(), buf = SYSCALLS.get(), bufsize = SYSCALLS.get();
  8877. return SYSCALLS.doReadlink(path, buf, bufsize);
  8878. } catch (e) {
  8879. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8880. return -e.errno;
  8881. }
  8882. }
  8883. function ___syscall9(which, varargs) {
  8884. SYSCALLS.varargs = varargs;
  8885. try {
  8886. var oldpath = SYSCALLS.get(), newpath = SYSCALLS.get();
  8887. return -ERRNO_CODES.EMLINK;
  8888. } catch (e) {
  8889. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8890. return -e.errno;
  8891. }
  8892. }
  8893. function ___syscall91(which, varargs) {
  8894. SYSCALLS.varargs = varargs;
  8895. try {
  8896. var addr = SYSCALLS.get(), len = SYSCALLS.get();
  8897. var info = SYSCALLS.mappings[addr];
  8898. if (!info) return 0;
  8899. if (len === info.len) {
  8900. var stream = FS.getStream(info.fd);
  8901. SYSCALLS.doMsync(addr, stream, len, info.flags);
  8902. FS.munmap(stream);
  8903. SYSCALLS.mappings[addr] = null;
  8904. if (info.allocated) {
  8905. _free(info.malloc);
  8906. }
  8907. }
  8908. return 0;
  8909. } catch (e) {
  8910. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8911. return -e.errno;
  8912. }
  8913. }
  8914. function ___unlock() {}
  8915. function _abort() {
  8916. Module["abort"]();
  8917. }
  8918. function _atexit(func, arg) {
  8919. warnOnce("atexit() called, but NO_EXIT_RUNTIME is set, so atexits() will not be called. set NO_EXIT_RUNTIME to 0 (see the FAQ)");
  8920. __ATEXIT__.unshift({
  8921. func: func,
  8922. arg: arg
  8923. });
  8924. }
  8925. function _clock() {
  8926. if (_clock.start === undefined) _clock.start = Date.now();
  8927. return (Date.now() - _clock.start) * (1e6 / 1e3) | 0;
  8928. }
  8929. function _emscripten_get_now_res() {
  8930. if (ENVIRONMENT_IS_NODE) {
  8931. return 1;
  8932. } else if (typeof dateNow !== "undefined" || (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) {
  8933. return 1e3;
  8934. } else {
  8935. return 1e3 * 1e3;
  8936. }
  8937. }
  8938. function _emscripten_get_now() {
  8939. abort();
  8940. }
  8941. function _emscripten_get_now_is_monotonic() {
  8942. return ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"];
  8943. }
  8944. function _clock_getres(clk_id, res) {
  8945. var nsec;
  8946. if (clk_id === 0) {
  8947. nsec = 1e3 * 1e3;
  8948. } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) {
  8949. nsec = _emscripten_get_now_res();
  8950. } else {
  8951. ___setErrNo(ERRNO_CODES.EINVAL);
  8952. return -1;
  8953. }
  8954. HEAP32[res >> 2] = nsec / 1e9 | 0;
  8955. HEAP32[res + 4 >> 2] = nsec;
  8956. return 0;
  8957. }
  8958. function _clock_gettime(clk_id, tp) {
  8959. var now;
  8960. if (clk_id === 0) {
  8961. now = Date.now();
  8962. } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) {
  8963. now = _emscripten_get_now();
  8964. } else {
  8965. ___setErrNo(ERRNO_CODES.EINVAL);
  8966. return -1;
  8967. }
  8968. HEAP32[tp >> 2] = now / 1e3 | 0;
  8969. HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0;
  8970. return 0;
  8971. }
  8972. function _difftime(time1, time0) {
  8973. return time1 - time0;
  8974. }
  8975. var DLFCN = {
  8976. error: null,
  8977. errorMsg: null,
  8978. loadedLibs: {},
  8979. loadedLibNames: {}
  8980. };
  8981. function _dlclose(handle) {
  8982. if (!DLFCN.loadedLibs[handle]) {
  8983. DLFCN.errorMsg = "Tried to dlclose() unopened handle: " + handle;
  8984. return 1;
  8985. } else {
  8986. var lib_record = DLFCN.loadedLibs[handle];
  8987. if (--lib_record.refcount == 0) {
  8988. if (lib_record.module.cleanups) {
  8989. lib_record.module.cleanups.forEach((function(cleanup) {
  8990. cleanup();
  8991. }));
  8992. }
  8993. delete DLFCN.loadedLibNames[lib_record.name];
  8994. delete DLFCN.loadedLibs[handle];
  8995. }
  8996. return 0;
  8997. }
  8998. }
  8999. function _dlopen(filename, flag) {
  9000. abort("To use dlopen, you need to use Emscripten's linking support, see https://github.com/kripken/emscripten/wiki/Linking");
  9001. var searchpaths = [];
  9002. if (filename === 0) {
  9003. filename = "__self__";
  9004. } else {
  9005. var strfilename = Pointer_stringify(filename);
  9006. var isValidFile = (function(filename) {
  9007. var target = FS.findObject(filename);
  9008. return target && !target.isFolder && !target.isDevice;
  9009. });
  9010. if (isValidFile(strfilename)) {
  9011. filename = strfilename;
  9012. } else {
  9013. if (ENV["LD_LIBRARY_PATH"]) {
  9014. searchpaths = ENV["LD_LIBRARY_PATH"].split(":");
  9015. }
  9016. for (var ident in searchpaths) {
  9017. var searchfile = PATH.join2(searchpaths[ident], strfilename);
  9018. if (isValidFile(searchfile)) {
  9019. filename = searchfile;
  9020. break;
  9021. }
  9022. }
  9023. }
  9024. }
  9025. if (DLFCN.loadedLibNames[filename]) {
  9026. var handle = DLFCN.loadedLibNames[filename];
  9027. DLFCN.loadedLibs[handle].refcount++;
  9028. return handle;
  9029. }
  9030. var lib_module;
  9031. if (filename === "__self__") {
  9032. var handle = -1;
  9033. lib_module = Module;
  9034. } else {
  9035. if (Module["preloadedWasm"] !== undefined && Module["preloadedWasm"][filename] !== undefined) {
  9036. lib_module = Module["preloadedWasm"][filename];
  9037. } else {
  9038. var target = FS.findObject(filename);
  9039. if (!target || target.isFolder || target.isDevice) {
  9040. DLFCN.errorMsg = "Could not find dynamic lib: " + filename;
  9041. return 0;
  9042. }
  9043. FS.forceLoadFile(target);
  9044. try {
  9045. var lib_data = FS.readFile(filename, {
  9046. encoding: "binary"
  9047. });
  9048. if (!(lib_data instanceof Uint8Array)) lib_data = new Uint8Array(lib_data);
  9049. lib_module = loadWebAssemblyModule(lib_data);
  9050. } catch (e) {
  9051. err("Error in loading dynamic library: " + e);
  9052. DLFCN.errorMsg = "Could not evaluate dynamic lib: " + filename + "\n" + e;
  9053. return 0;
  9054. }
  9055. }
  9056. var handle = 1;
  9057. for (var key in DLFCN.loadedLibs) {
  9058. if (DLFCN.loadedLibs.hasOwnProperty(key)) handle++;
  9059. }
  9060. if (flag & 256) {
  9061. for (var ident in lib_module) {
  9062. if (lib_module.hasOwnProperty(ident)) {
  9063. if (ident[0] == "_") {
  9064. Module[ident] = lib_module[ident];
  9065. }
  9066. }
  9067. }
  9068. }
  9069. }
  9070. DLFCN.loadedLibs[handle] = {
  9071. refcount: 1,
  9072. name: filename,
  9073. module: lib_module
  9074. };
  9075. DLFCN.loadedLibNames[filename] = handle;
  9076. return handle;
  9077. }
  9078. function _dlsym(handle, symbol) {
  9079. symbol = Pointer_stringify(symbol);
  9080. if (!DLFCN.loadedLibs[handle]) {
  9081. DLFCN.errorMsg = "Tried to dlsym() from an unopened handle: " + handle;
  9082. return 0;
  9083. } else {
  9084. var lib = DLFCN.loadedLibs[handle];
  9085. symbol = "_" + symbol;
  9086. if (!lib.module.hasOwnProperty(symbol)) {
  9087. DLFCN.errorMsg = 'Tried to lookup unknown symbol "' + symbol + '" in dynamic lib: ' + lib.name;
  9088. return 0;
  9089. } else {
  9090. var result = lib.module[symbol];
  9091. if (typeof result === "function") {
  9092. return addFunction(result);
  9093. }
  9094. return result;
  9095. }
  9096. }
  9097. }
  9098. function _emscripten_set_main_loop_timing(mode, value) {
  9099. Browser.mainLoop.timingMode = mode;
  9100. Browser.mainLoop.timingValue = value;
  9101. if (!Browser.mainLoop.func) {
  9102. 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.");
  9103. return 1;
  9104. }
  9105. if (mode == 0) {
  9106. Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_setTimeout() {
  9107. var timeUntilNextTick = Math.max(0, Browser.mainLoop.tickStartTime + value - _emscripten_get_now()) | 0;
  9108. setTimeout(Browser.mainLoop.runner, timeUntilNextTick);
  9109. };
  9110. Browser.mainLoop.method = "timeout";
  9111. } else if (mode == 1) {
  9112. Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_rAF() {
  9113. Browser.requestAnimationFrame(Browser.mainLoop.runner);
  9114. };
  9115. Browser.mainLoop.method = "rAF";
  9116. } else if (mode == 2) {
  9117. if (typeof setImmediate === "undefined") {
  9118. var setImmediates = [];
  9119. var emscriptenMainLoopMessageId = "setimmediate";
  9120. function Browser_setImmediate_messageHandler(event) {
  9121. if (event.data === emscriptenMainLoopMessageId || event.data.target === emscriptenMainLoopMessageId) {
  9122. event.stopPropagation();
  9123. setImmediates.shift()();
  9124. }
  9125. }
  9126. addEventListener("message", Browser_setImmediate_messageHandler, true);
  9127. setImmediate = function Browser_emulated_setImmediate(func) {
  9128. setImmediates.push(func);
  9129. if (ENVIRONMENT_IS_WORKER) {
  9130. if (Module["setImmediates"] === undefined) Module["setImmediates"] = [];
  9131. Module["setImmediates"].push(func);
  9132. postMessage({
  9133. target: emscriptenMainLoopMessageId
  9134. });
  9135. } else postMessage(emscriptenMainLoopMessageId, "*");
  9136. };
  9137. }
  9138. Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_setImmediate() {
  9139. setImmediate(Browser.mainLoop.runner);
  9140. };
  9141. Browser.mainLoop.method = "immediate";
  9142. }
  9143. return 0;
  9144. }
  9145. function _emscripten_set_main_loop(func, fps, simulateInfiniteLoop, arg, noSetTiming) {
  9146. Module["noExitRuntime"] = true;
  9147. 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.");
  9148. Browser.mainLoop.func = func;
  9149. Browser.mainLoop.arg = arg;
  9150. var browserIterationFunc;
  9151. if (typeof arg !== "undefined") {
  9152. browserIterationFunc = (function() {
  9153. Module["dynCall_vi"](func, arg);
  9154. });
  9155. } else {
  9156. browserIterationFunc = (function() {
  9157. Module["dynCall_v"](func);
  9158. });
  9159. }
  9160. var thisMainLoopId = Browser.mainLoop.currentlyRunningMainloop;
  9161. Browser.mainLoop.runner = function Browser_mainLoop_runner() {
  9162. if (ABORT) return;
  9163. if (Browser.mainLoop.queue.length > 0) {
  9164. var start = Date.now();
  9165. var blocker = Browser.mainLoop.queue.shift();
  9166. blocker.func(blocker.arg);
  9167. if (Browser.mainLoop.remainingBlockers) {
  9168. var remaining = Browser.mainLoop.remainingBlockers;
  9169. var next = remaining % 1 == 0 ? remaining - 1 : Math.floor(remaining);
  9170. if (blocker.counted) {
  9171. Browser.mainLoop.remainingBlockers = next;
  9172. } else {
  9173. next = next + .5;
  9174. Browser.mainLoop.remainingBlockers = (8 * remaining + next) / 9;
  9175. }
  9176. }
  9177. console.log('main loop blocker "' + blocker.name + '" took ' + (Date.now() - start) + " ms");
  9178. Browser.mainLoop.updateStatus();
  9179. if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return;
  9180. setTimeout(Browser.mainLoop.runner, 0);
  9181. return;
  9182. }
  9183. if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return;
  9184. Browser.mainLoop.currentFrameNumber = Browser.mainLoop.currentFrameNumber + 1 | 0;
  9185. if (Browser.mainLoop.timingMode == 1 && Browser.mainLoop.timingValue > 1 && Browser.mainLoop.currentFrameNumber % Browser.mainLoop.timingValue != 0) {
  9186. Browser.mainLoop.scheduler();
  9187. return;
  9188. } else if (Browser.mainLoop.timingMode == 0) {
  9189. Browser.mainLoop.tickStartTime = _emscripten_get_now();
  9190. }
  9191. if (Browser.mainLoop.method === "timeout" && Module.ctx) {
  9192. 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!");
  9193. Browser.mainLoop.method = "";
  9194. }
  9195. Browser.mainLoop.runIter(browserIterationFunc);
  9196. checkStackCookie();
  9197. if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return;
  9198. if (typeof SDL === "object" && SDL.audio && SDL.audio.queueNewAudioData) SDL.audio.queueNewAudioData();
  9199. Browser.mainLoop.scheduler();
  9200. };
  9201. if (!noSetTiming) {
  9202. if (fps && fps > 0) _emscripten_set_main_loop_timing(0, 1e3 / fps); else _emscripten_set_main_loop_timing(1, 1);
  9203. Browser.mainLoop.scheduler();
  9204. }
  9205. if (simulateInfiniteLoop) {
  9206. throw "SimulateInfiniteLoop";
  9207. }
  9208. }
  9209. var Browser = {
  9210. mainLoop: {
  9211. scheduler: null,
  9212. method: "",
  9213. currentlyRunningMainloop: 0,
  9214. func: null,
  9215. arg: 0,
  9216. timingMode: 0,
  9217. timingValue: 0,
  9218. currentFrameNumber: 0,
  9219. queue: [],
  9220. pause: (function() {
  9221. Browser.mainLoop.scheduler = null;
  9222. Browser.mainLoop.currentlyRunningMainloop++;
  9223. }),
  9224. resume: (function() {
  9225. Browser.mainLoop.currentlyRunningMainloop++;
  9226. var timingMode = Browser.mainLoop.timingMode;
  9227. var timingValue = Browser.mainLoop.timingValue;
  9228. var func = Browser.mainLoop.func;
  9229. Browser.mainLoop.func = null;
  9230. _emscripten_set_main_loop(func, 0, false, Browser.mainLoop.arg, true);
  9231. _emscripten_set_main_loop_timing(timingMode, timingValue);
  9232. Browser.mainLoop.scheduler();
  9233. }),
  9234. updateStatus: (function() {
  9235. if (Module["setStatus"]) {
  9236. var message = Module["statusMessage"] || "Please wait...";
  9237. var remaining = Browser.mainLoop.remainingBlockers;
  9238. var expected = Browser.mainLoop.expectedBlockers;
  9239. if (remaining) {
  9240. if (remaining < expected) {
  9241. Module["setStatus"](message + " (" + (expected - remaining) + "/" + expected + ")");
  9242. } else {
  9243. Module["setStatus"](message);
  9244. }
  9245. } else {
  9246. Module["setStatus"]("");
  9247. }
  9248. }
  9249. }),
  9250. runIter: (function(func) {
  9251. if (ABORT) return;
  9252. if (Module["preMainLoop"]) {
  9253. var preRet = Module["preMainLoop"]();
  9254. if (preRet === false) {
  9255. return;
  9256. }
  9257. }
  9258. try {
  9259. func();
  9260. } catch (e) {
  9261. if (e instanceof ExitStatus) {
  9262. return;
  9263. } else {
  9264. if (e && typeof e === "object" && e.stack) err("exception thrown: " + [ e, e.stack ]);
  9265. throw e;
  9266. }
  9267. }
  9268. if (Module["postMainLoop"]) Module["postMainLoop"]();
  9269. })
  9270. },
  9271. isFullscreen: false,
  9272. pointerLock: false,
  9273. moduleContextCreatedCallbacks: [],
  9274. workers: [],
  9275. init: (function() {
  9276. if (!Module["preloadPlugins"]) Module["preloadPlugins"] = [];
  9277. if (Browser.initted) return;
  9278. Browser.initted = true;
  9279. try {
  9280. new Blob;
  9281. Browser.hasBlobConstructor = true;
  9282. } catch (e) {
  9283. Browser.hasBlobConstructor = false;
  9284. console.log("warning: no blob constructor, cannot create blobs with mimetypes");
  9285. }
  9286. Browser.BlobBuilder = typeof MozBlobBuilder != "undefined" ? MozBlobBuilder : typeof WebKitBlobBuilder != "undefined" ? WebKitBlobBuilder : !Browser.hasBlobConstructor ? console.log("warning: no BlobBuilder") : null;
  9287. Browser.URLObject = typeof window != "undefined" ? window.URL ? window.URL : window.webkitURL : undefined;
  9288. if (!Module.noImageDecoding && typeof Browser.URLObject === "undefined") {
  9289. console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");
  9290. Module.noImageDecoding = true;
  9291. }
  9292. var imagePlugin = {};
  9293. imagePlugin["canHandle"] = function imagePlugin_canHandle(name) {
  9294. return !Module.noImageDecoding && /\.(jpg|jpeg|png|bmp)$/i.test(name);
  9295. };
  9296. imagePlugin["handle"] = function imagePlugin_handle(byteArray, name, onload, onerror) {
  9297. var b = null;
  9298. if (Browser.hasBlobConstructor) {
  9299. try {
  9300. b = new Blob([ byteArray ], {
  9301. type: Browser.getMimetype(name)
  9302. });
  9303. if (b.size !== byteArray.length) {
  9304. b = new Blob([ (new Uint8Array(byteArray)).buffer ], {
  9305. type: Browser.getMimetype(name)
  9306. });
  9307. }
  9308. } catch (e) {
  9309. warnOnce("Blob constructor present but fails: " + e + "; falling back to blob builder");
  9310. }
  9311. }
  9312. if (!b) {
  9313. var bb = new Browser.BlobBuilder;
  9314. bb.append((new Uint8Array(byteArray)).buffer);
  9315. b = bb.getBlob();
  9316. }
  9317. var url = Browser.URLObject.createObjectURL(b);
  9318. assert(typeof url == "string", "createObjectURL must return a url as a string");
  9319. var img = new Image;
  9320. img.onload = function img_onload() {
  9321. assert(img.complete, "Image " + name + " could not be decoded");
  9322. var canvas = document.createElement("canvas");
  9323. canvas.width = img.width;
  9324. canvas.height = img.height;
  9325. var ctx = canvas.getContext("2d");
  9326. ctx.drawImage(img, 0, 0);
  9327. Module["preloadedImages"][name] = canvas;
  9328. Browser.URLObject.revokeObjectURL(url);
  9329. if (onload) onload(byteArray);
  9330. };
  9331. img.onerror = function img_onerror(event) {
  9332. console.log("Image " + url + " could not be decoded");
  9333. if (onerror) onerror();
  9334. };
  9335. img.src = url;
  9336. };
  9337. Module["preloadPlugins"].push(imagePlugin);
  9338. var audioPlugin = {};
  9339. audioPlugin["canHandle"] = function audioPlugin_canHandle(name) {
  9340. return !Module.noAudioDecoding && name.substr(-4) in {
  9341. ".ogg": 1,
  9342. ".wav": 1,
  9343. ".mp3": 1
  9344. };
  9345. };
  9346. audioPlugin["handle"] = function audioPlugin_handle(byteArray, name, onload, onerror) {
  9347. var done = false;
  9348. function finish(audio) {
  9349. if (done) return;
  9350. done = true;
  9351. Module["preloadedAudios"][name] = audio;
  9352. if (onload) onload(byteArray);
  9353. }
  9354. function fail() {
  9355. if (done) return;
  9356. done = true;
  9357. Module["preloadedAudios"][name] = new Audio;
  9358. if (onerror) onerror();
  9359. }
  9360. if (Browser.hasBlobConstructor) {
  9361. try {
  9362. var b = new Blob([ byteArray ], {
  9363. type: Browser.getMimetype(name)
  9364. });
  9365. } catch (e) {
  9366. return fail();
  9367. }
  9368. var url = Browser.URLObject.createObjectURL(b);
  9369. assert(typeof url == "string", "createObjectURL must return a url as a string");
  9370. var audio = new Audio;
  9371. audio.addEventListener("canplaythrough", (function() {
  9372. finish(audio);
  9373. }), false);
  9374. audio.onerror = function audio_onerror(event) {
  9375. if (done) return;
  9376. console.log("warning: browser could not fully decode audio " + name + ", trying slower base64 approach");
  9377. function encode64(data) {
  9378. var BASE = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
  9379. var PAD = "=";
  9380. var ret = "";
  9381. var leftchar = 0;
  9382. var leftbits = 0;
  9383. for (var i = 0; i < data.length; i++) {
  9384. leftchar = leftchar << 8 | data[i];
  9385. leftbits += 8;
  9386. while (leftbits >= 6) {
  9387. var curr = leftchar >> leftbits - 6 & 63;
  9388. leftbits -= 6;
  9389. ret += BASE[curr];
  9390. }
  9391. }
  9392. if (leftbits == 2) {
  9393. ret += BASE[(leftchar & 3) << 4];
  9394. ret += PAD + PAD;
  9395. } else if (leftbits == 4) {
  9396. ret += BASE[(leftchar & 15) << 2];
  9397. ret += PAD;
  9398. }
  9399. return ret;
  9400. }
  9401. audio.src = "data:audio/x-" + name.substr(-3) + ";base64," + encode64(byteArray);
  9402. finish(audio);
  9403. };
  9404. audio.src = url;
  9405. Browser.safeSetTimeout((function() {
  9406. finish(audio);
  9407. }), 1e4);
  9408. } else {
  9409. return fail();
  9410. }
  9411. };
  9412. Module["preloadPlugins"].push(audioPlugin);
  9413. function pointerLockChange() {
  9414. Browser.pointerLock = document["pointerLockElement"] === Module["canvas"] || document["mozPointerLockElement"] === Module["canvas"] || document["webkitPointerLockElement"] === Module["canvas"] || document["msPointerLockElement"] === Module["canvas"];
  9415. }
  9416. var canvas = Module["canvas"];
  9417. if (canvas) {
  9418. canvas.requestPointerLock = canvas["requestPointerLock"] || canvas["mozRequestPointerLock"] || canvas["webkitRequestPointerLock"] || canvas["msRequestPointerLock"] || (function() {});
  9419. canvas.exitPointerLock = document["exitPointerLock"] || document["mozExitPointerLock"] || document["webkitExitPointerLock"] || document["msExitPointerLock"] || (function() {});
  9420. canvas.exitPointerLock = canvas.exitPointerLock.bind(document);
  9421. document.addEventListener("pointerlockchange", pointerLockChange, false);
  9422. document.addEventListener("mozpointerlockchange", pointerLockChange, false);
  9423. document.addEventListener("webkitpointerlockchange", pointerLockChange, false);
  9424. document.addEventListener("mspointerlockchange", pointerLockChange, false);
  9425. if (Module["elementPointerLock"]) {
  9426. canvas.addEventListener("click", (function(ev) {
  9427. if (!Browser.pointerLock && Module["canvas"].requestPointerLock) {
  9428. Module["canvas"].requestPointerLock();
  9429. ev.preventDefault();
  9430. }
  9431. }), false);
  9432. }
  9433. }
  9434. }),
  9435. createContext: (function(canvas, useWebGL, setInModule, webGLContextAttributes) {
  9436. if (useWebGL && Module.ctx && canvas == Module.canvas) return Module.ctx;
  9437. var ctx;
  9438. var contextHandle;
  9439. if (useWebGL) {
  9440. var contextAttributes = {
  9441. antialias: false,
  9442. alpha: false
  9443. };
  9444. if (webGLContextAttributes) {
  9445. for (var attribute in webGLContextAttributes) {
  9446. contextAttributes[attribute] = webGLContextAttributes[attribute];
  9447. }
  9448. }
  9449. contextHandle = GL.createContext(canvas, contextAttributes);
  9450. if (contextHandle) {
  9451. ctx = GL.getContext(contextHandle).GLctx;
  9452. }
  9453. } else {
  9454. ctx = canvas.getContext("2d");
  9455. }
  9456. if (!ctx) return null;
  9457. if (setInModule) {
  9458. 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");
  9459. Module.ctx = ctx;
  9460. if (useWebGL) GL.makeContextCurrent(contextHandle);
  9461. Module.useWebGL = useWebGL;
  9462. Browser.moduleContextCreatedCallbacks.forEach((function(callback) {
  9463. callback();
  9464. }));
  9465. Browser.init();
  9466. }
  9467. return ctx;
  9468. }),
  9469. destroyContext: (function(canvas, useWebGL, setInModule) {}),
  9470. fullscreenHandlersInstalled: false,
  9471. lockPointer: undefined,
  9472. resizeCanvas: undefined,
  9473. requestFullscreen: (function(lockPointer, resizeCanvas, vrDevice) {
  9474. Browser.lockPointer = lockPointer;
  9475. Browser.resizeCanvas = resizeCanvas;
  9476. Browser.vrDevice = vrDevice;
  9477. if (typeof Browser.lockPointer === "undefined") Browser.lockPointer = true;
  9478. if (typeof Browser.resizeCanvas === "undefined") Browser.resizeCanvas = false;
  9479. if (typeof Browser.vrDevice === "undefined") Browser.vrDevice = null;
  9480. var canvas = Module["canvas"];
  9481. function fullscreenChange() {
  9482. Browser.isFullscreen = false;
  9483. var canvasContainer = canvas.parentNode;
  9484. if ((document["fullscreenElement"] || document["mozFullScreenElement"] || document["msFullscreenElement"] || document["webkitFullscreenElement"] || document["webkitCurrentFullScreenElement"]) === canvasContainer) {
  9485. canvas.exitFullscreen = document["exitFullscreen"] || document["cancelFullScreen"] || document["mozCancelFullScreen"] || document["msExitFullscreen"] || document["webkitCancelFullScreen"] || (function() {});
  9486. canvas.exitFullscreen = canvas.exitFullscreen.bind(document);
  9487. if (Browser.lockPointer) canvas.requestPointerLock();
  9488. Browser.isFullscreen = true;
  9489. if (Browser.resizeCanvas) {
  9490. Browser.setFullscreenCanvasSize();
  9491. } else {
  9492. Browser.updateCanvasDimensions(canvas);
  9493. }
  9494. } else {
  9495. canvasContainer.parentNode.insertBefore(canvas, canvasContainer);
  9496. canvasContainer.parentNode.removeChild(canvasContainer);
  9497. if (Browser.resizeCanvas) {
  9498. Browser.setWindowedCanvasSize();
  9499. } else {
  9500. Browser.updateCanvasDimensions(canvas);
  9501. }
  9502. }
  9503. if (Module["onFullScreen"]) Module["onFullScreen"](Browser.isFullscreen);
  9504. if (Module["onFullscreen"]) Module["onFullscreen"](Browser.isFullscreen);
  9505. }
  9506. if (!Browser.fullscreenHandlersInstalled) {
  9507. Browser.fullscreenHandlersInstalled = true;
  9508. document.addEventListener("fullscreenchange", fullscreenChange, false);
  9509. document.addEventListener("mozfullscreenchange", fullscreenChange, false);
  9510. document.addEventListener("webkitfullscreenchange", fullscreenChange, false);
  9511. document.addEventListener("MSFullscreenChange", fullscreenChange, false);
  9512. }
  9513. var canvasContainer = document.createElement("div");
  9514. canvas.parentNode.insertBefore(canvasContainer, canvas);
  9515. canvasContainer.appendChild(canvas);
  9516. canvasContainer.requestFullscreen = canvasContainer["requestFullscreen"] || canvasContainer["mozRequestFullScreen"] || canvasContainer["msRequestFullscreen"] || (canvasContainer["webkitRequestFullscreen"] ? (function() {
  9517. canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]);
  9518. }) : null) || (canvasContainer["webkitRequestFullScreen"] ? (function() {
  9519. canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]);
  9520. }) : null);
  9521. if (vrDevice) {
  9522. canvasContainer.requestFullscreen({
  9523. vrDisplay: vrDevice
  9524. });
  9525. } else {
  9526. canvasContainer.requestFullscreen();
  9527. }
  9528. }),
  9529. requestFullScreen: (function(lockPointer, resizeCanvas, vrDevice) {
  9530. err("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead.");
  9531. Browser.requestFullScreen = (function(lockPointer, resizeCanvas, vrDevice) {
  9532. return Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice);
  9533. });
  9534. return Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice);
  9535. }),
  9536. nextRAF: 0,
  9537. fakeRequestAnimationFrame: (function(func) {
  9538. var now = Date.now();
  9539. if (Browser.nextRAF === 0) {
  9540. Browser.nextRAF = now + 1e3 / 60;
  9541. } else {
  9542. while (now + 2 >= Browser.nextRAF) {
  9543. Browser.nextRAF += 1e3 / 60;
  9544. }
  9545. }
  9546. var delay = Math.max(Browser.nextRAF - now, 0);
  9547. setTimeout(func, delay);
  9548. }),
  9549. requestAnimationFrame: function requestAnimationFrame(func) {
  9550. if (typeof window === "undefined") {
  9551. Browser.fakeRequestAnimationFrame(func);
  9552. } else {
  9553. if (!window.requestAnimationFrame) {
  9554. window.requestAnimationFrame = window["requestAnimationFrame"] || window["mozRequestAnimationFrame"] || window["webkitRequestAnimationFrame"] || window["msRequestAnimationFrame"] || window["oRequestAnimationFrame"] || Browser.fakeRequestAnimationFrame;
  9555. }
  9556. window.requestAnimationFrame(func);
  9557. }
  9558. },
  9559. safeCallback: (function(func) {
  9560. return (function() {
  9561. if (!ABORT) return func.apply(null, arguments);
  9562. });
  9563. }),
  9564. allowAsyncCallbacks: true,
  9565. queuedAsyncCallbacks: [],
  9566. pauseAsyncCallbacks: (function() {
  9567. Browser.allowAsyncCallbacks = false;
  9568. }),
  9569. resumeAsyncCallbacks: (function() {
  9570. Browser.allowAsyncCallbacks = true;
  9571. if (Browser.queuedAsyncCallbacks.length > 0) {
  9572. var callbacks = Browser.queuedAsyncCallbacks;
  9573. Browser.queuedAsyncCallbacks = [];
  9574. callbacks.forEach((function(func) {
  9575. func();
  9576. }));
  9577. }
  9578. }),
  9579. safeRequestAnimationFrame: (function(func) {
  9580. return Browser.requestAnimationFrame((function() {
  9581. if (ABORT) return;
  9582. if (Browser.allowAsyncCallbacks) {
  9583. func();
  9584. } else {
  9585. Browser.queuedAsyncCallbacks.push(func);
  9586. }
  9587. }));
  9588. }),
  9589. safeSetTimeout: (function(func, timeout) {
  9590. Module["noExitRuntime"] = true;
  9591. return setTimeout((function() {
  9592. if (ABORT) return;
  9593. if (Browser.allowAsyncCallbacks) {
  9594. func();
  9595. } else {
  9596. Browser.queuedAsyncCallbacks.push(func);
  9597. }
  9598. }), timeout);
  9599. }),
  9600. safeSetInterval: (function(func, timeout) {
  9601. Module["noExitRuntime"] = true;
  9602. return setInterval((function() {
  9603. if (ABORT) return;
  9604. if (Browser.allowAsyncCallbacks) {
  9605. func();
  9606. }
  9607. }), timeout);
  9608. }),
  9609. getMimetype: (function(name) {
  9610. return {
  9611. "jpg": "image/jpeg",
  9612. "jpeg": "image/jpeg",
  9613. "png": "image/png",
  9614. "bmp": "image/bmp",
  9615. "ogg": "audio/ogg",
  9616. "wav": "audio/wav",
  9617. "mp3": "audio/mpeg"
  9618. }[name.substr(name.lastIndexOf(".") + 1)];
  9619. }),
  9620. getUserMedia: (function(func) {
  9621. if (!window.getUserMedia) {
  9622. window.getUserMedia = navigator["getUserMedia"] || navigator["mozGetUserMedia"];
  9623. }
  9624. window.getUserMedia(func);
  9625. }),
  9626. getMovementX: (function(event) {
  9627. return event["movementX"] || event["mozMovementX"] || event["webkitMovementX"] || 0;
  9628. }),
  9629. getMovementY: (function(event) {
  9630. return event["movementY"] || event["mozMovementY"] || event["webkitMovementY"] || 0;
  9631. }),
  9632. getMouseWheelDelta: (function(event) {
  9633. var delta = 0;
  9634. switch (event.type) {
  9635. case "DOMMouseScroll":
  9636. delta = event.detail;
  9637. break;
  9638. case "mousewheel":
  9639. delta = event.wheelDelta;
  9640. break;
  9641. case "wheel":
  9642. delta = event["deltaY"];
  9643. break;
  9644. default:
  9645. throw "unrecognized mouse wheel event: " + event.type;
  9646. }
  9647. return delta;
  9648. }),
  9649. mouseX: 0,
  9650. mouseY: 0,
  9651. mouseMovementX: 0,
  9652. mouseMovementY: 0,
  9653. touches: {},
  9654. lastTouches: {},
  9655. calculateMouseEvent: (function(event) {
  9656. if (Browser.pointerLock) {
  9657. if (event.type != "mousemove" && "mozMovementX" in event) {
  9658. Browser.mouseMovementX = Browser.mouseMovementY = 0;
  9659. } else {
  9660. Browser.mouseMovementX = Browser.getMovementX(event);
  9661. Browser.mouseMovementY = Browser.getMovementY(event);
  9662. }
  9663. if (typeof SDL != "undefined") {
  9664. Browser.mouseX = SDL.mouseX + Browser.mouseMovementX;
  9665. Browser.mouseY = SDL.mouseY + Browser.mouseMovementY;
  9666. } else {
  9667. Browser.mouseX += Browser.mouseMovementX;
  9668. Browser.mouseY += Browser.mouseMovementY;
  9669. }
  9670. } else {
  9671. var rect = Module["canvas"].getBoundingClientRect();
  9672. var cw = Module["canvas"].width;
  9673. var ch = Module["canvas"].height;
  9674. var scrollX = typeof window.scrollX !== "undefined" ? window.scrollX : window.pageXOffset;
  9675. var scrollY = typeof window.scrollY !== "undefined" ? window.scrollY : window.pageYOffset;
  9676. assert(typeof scrollX !== "undefined" && typeof scrollY !== "undefined", "Unable to retrieve scroll position, mouse positions likely broken.");
  9677. if (event.type === "touchstart" || event.type === "touchend" || event.type === "touchmove") {
  9678. var touch = event.touch;
  9679. if (touch === undefined) {
  9680. return;
  9681. }
  9682. var adjustedX = touch.pageX - (scrollX + rect.left);
  9683. var adjustedY = touch.pageY - (scrollY + rect.top);
  9684. adjustedX = adjustedX * (cw / rect.width);
  9685. adjustedY = adjustedY * (ch / rect.height);
  9686. var coords = {
  9687. x: adjustedX,
  9688. y: adjustedY
  9689. };
  9690. if (event.type === "touchstart") {
  9691. Browser.lastTouches[touch.identifier] = coords;
  9692. Browser.touches[touch.identifier] = coords;
  9693. } else if (event.type === "touchend" || event.type === "touchmove") {
  9694. var last = Browser.touches[touch.identifier];
  9695. if (!last) last = coords;
  9696. Browser.lastTouches[touch.identifier] = last;
  9697. Browser.touches[touch.identifier] = coords;
  9698. }
  9699. return;
  9700. }
  9701. var x = event.pageX - (scrollX + rect.left);
  9702. var y = event.pageY - (scrollY + rect.top);
  9703. x = x * (cw / rect.width);
  9704. y = y * (ch / rect.height);
  9705. Browser.mouseMovementX = x - Browser.mouseX;
  9706. Browser.mouseMovementY = y - Browser.mouseY;
  9707. Browser.mouseX = x;
  9708. Browser.mouseY = y;
  9709. }
  9710. }),
  9711. asyncLoad: (function(url, onload, onerror, noRunDep) {
  9712. var dep = !noRunDep ? getUniqueRunDependency("al " + url) : "";
  9713. Module["readAsync"](url, (function(arrayBuffer) {
  9714. assert(arrayBuffer, 'Loading data file "' + url + '" failed (no arrayBuffer).');
  9715. onload(new Uint8Array(arrayBuffer));
  9716. if (dep) removeRunDependency(dep);
  9717. }), (function(event) {
  9718. if (onerror) {
  9719. onerror();
  9720. } else {
  9721. throw 'Loading data file "' + url + '" failed.';
  9722. }
  9723. }));
  9724. if (dep) addRunDependency(dep);
  9725. }),
  9726. resizeListeners: [],
  9727. updateResizeListeners: (function() {
  9728. var canvas = Module["canvas"];
  9729. Browser.resizeListeners.forEach((function(listener) {
  9730. listener(canvas.width, canvas.height);
  9731. }));
  9732. }),
  9733. setCanvasSize: (function(width, height, noUpdates) {
  9734. var canvas = Module["canvas"];
  9735. Browser.updateCanvasDimensions(canvas, width, height);
  9736. if (!noUpdates) Browser.updateResizeListeners();
  9737. }),
  9738. windowedWidth: 0,
  9739. windowedHeight: 0,
  9740. setFullscreenCanvasSize: (function() {
  9741. if (typeof SDL != "undefined") {
  9742. var flags = HEAPU32[SDL.screen >> 2];
  9743. flags = flags | 8388608;
  9744. HEAP32[SDL.screen >> 2] = flags;
  9745. }
  9746. Browser.updateCanvasDimensions(Module["canvas"]);
  9747. Browser.updateResizeListeners();
  9748. }),
  9749. setWindowedCanvasSize: (function() {
  9750. if (typeof SDL != "undefined") {
  9751. var flags = HEAPU32[SDL.screen >> 2];
  9752. flags = flags & ~8388608;
  9753. HEAP32[SDL.screen >> 2] = flags;
  9754. }
  9755. Browser.updateCanvasDimensions(Module["canvas"]);
  9756. Browser.updateResizeListeners();
  9757. }),
  9758. updateCanvasDimensions: (function(canvas, wNative, hNative) {
  9759. if (wNative && hNative) {
  9760. canvas.widthNative = wNative;
  9761. canvas.heightNative = hNative;
  9762. } else {
  9763. wNative = canvas.widthNative;
  9764. hNative = canvas.heightNative;
  9765. }
  9766. var w = wNative;
  9767. var h = hNative;
  9768. if (Module["forcedAspectRatio"] && Module["forcedAspectRatio"] > 0) {
  9769. if (w / h < Module["forcedAspectRatio"]) {
  9770. w = Math.round(h * Module["forcedAspectRatio"]);
  9771. } else {
  9772. h = Math.round(w / Module["forcedAspectRatio"]);
  9773. }
  9774. }
  9775. if ((document["fullscreenElement"] || document["mozFullScreenElement"] || document["msFullscreenElement"] || document["webkitFullscreenElement"] || document["webkitCurrentFullScreenElement"]) === canvas.parentNode && typeof screen != "undefined") {
  9776. var factor = Math.min(screen.width / w, screen.height / h);
  9777. w = Math.round(w * factor);
  9778. h = Math.round(h * factor);
  9779. }
  9780. if (Browser.resizeCanvas) {
  9781. if (canvas.width != w) canvas.width = w;
  9782. if (canvas.height != h) canvas.height = h;
  9783. if (typeof canvas.style != "undefined") {
  9784. canvas.style.removeProperty("width");
  9785. canvas.style.removeProperty("height");
  9786. }
  9787. } else {
  9788. if (canvas.width != wNative) canvas.width = wNative;
  9789. if (canvas.height != hNative) canvas.height = hNative;
  9790. if (typeof canvas.style != "undefined") {
  9791. if (w != wNative || h != hNative) {
  9792. canvas.style.setProperty("width", w + "px", "important");
  9793. canvas.style.setProperty("height", h + "px", "important");
  9794. } else {
  9795. canvas.style.removeProperty("width");
  9796. canvas.style.removeProperty("height");
  9797. }
  9798. }
  9799. }
  9800. }),
  9801. wgetRequests: {},
  9802. nextWgetRequestHandle: 0,
  9803. getNextWgetRequestHandle: (function() {
  9804. var handle = Browser.nextWgetRequestHandle;
  9805. Browser.nextWgetRequestHandle++;
  9806. return handle;
  9807. })
  9808. };
  9809. function _emscripten_cancel_main_loop() {
  9810. Browser.mainLoop.pause();
  9811. Browser.mainLoop.func = null;
  9812. }
  9813. function _emscripten_set_canvas_element_size(target, width, height) {
  9814. var canvas = JSEvents.findCanvasEventTarget(target);
  9815. if (!canvas) return -4;
  9816. canvas.width = width;
  9817. canvas.height = height;
  9818. return 0;
  9819. }
  9820. function emscripten_set_canvas_element_size_js(target, width, height) {
  9821. if (typeof target === "string") {
  9822. var stackTop = stackSave();
  9823. var targetInt = stackAlloc(target.length + 1);
  9824. stringToUTF8(target, targetInt, target.length + 1);
  9825. var ret = _emscripten_set_canvas_element_size(targetInt, width, height);
  9826. stackRestore(stackTop);
  9827. return ret;
  9828. } else {
  9829. return _emscripten_set_canvas_element_size(target, width, height);
  9830. }
  9831. }
  9832. function _emscripten_get_canvas_element_size_calling_thread(target, width, height) {
  9833. var canvas = JSEvents.findCanvasEventTarget(target);
  9834. if (!canvas) return -4;
  9835. if (canvas.canvasSharedPtr) {
  9836. var w = HEAP32[canvas.canvasSharedPtr >> 2];
  9837. var h = HEAP32[canvas.canvasSharedPtr + 4 >> 2];
  9838. HEAP32[width >> 2] = w;
  9839. HEAP32[height >> 2] = h;
  9840. } else if (canvas.offscreenCanvas) {
  9841. HEAP32[width >> 2] = canvas.offscreenCanvas.width;
  9842. HEAP32[height >> 2] = canvas.offscreenCanvas.height;
  9843. } else if (!canvas.controlTransferredOffscreen) {
  9844. HEAP32[width >> 2] = canvas.width;
  9845. HEAP32[height >> 2] = canvas.height;
  9846. } else {
  9847. return -4;
  9848. }
  9849. return 0;
  9850. }
  9851. function _emscripten_get_canvas_element_size_main_thread(target, width, height) {
  9852. return _emscripten_get_canvas_element_size_calling_thread(target, width, height);
  9853. }
  9854. function _emscripten_get_canvas_element_size(target, width, height) {
  9855. var canvas = JSEvents.findCanvasEventTarget(target);
  9856. 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);
  9857. }
  9858. function emscripten_get_canvas_element_size_js(target) {
  9859. var stackTop = stackSave();
  9860. var w = stackAlloc(8);
  9861. var h = w + 4;
  9862. if (typeof target === "string") {
  9863. var targetInt = stackAlloc(target.length + 1);
  9864. stringToUTF8(target, targetInt, target.length + 1);
  9865. target = targetInt;
  9866. }
  9867. var ret = _emscripten_get_canvas_element_size(target, w, h);
  9868. var size = [ HEAP32[w >> 2], HEAP32[h >> 2] ];
  9869. stackRestore(stackTop);
  9870. return size;
  9871. }
  9872. var JSEvents = {
  9873. keyEvent: 0,
  9874. mouseEvent: 0,
  9875. wheelEvent: 0,
  9876. uiEvent: 0,
  9877. focusEvent: 0,
  9878. deviceOrientationEvent: 0,
  9879. deviceMotionEvent: 0,
  9880. fullscreenChangeEvent: 0,
  9881. pointerlockChangeEvent: 0,
  9882. visibilityChangeEvent: 0,
  9883. touchEvent: 0,
  9884. lastGamepadState: null,
  9885. lastGamepadStateFrame: null,
  9886. numGamepadsConnected: 0,
  9887. previousFullscreenElement: null,
  9888. previousScreenX: null,
  9889. previousScreenY: null,
  9890. removeEventListenersRegistered: false,
  9891. _onGamepadConnected: (function() {
  9892. ++JSEvents.numGamepadsConnected;
  9893. }),
  9894. _onGamepadDisconnected: (function() {
  9895. --JSEvents.numGamepadsConnected;
  9896. }),
  9897. staticInit: (function() {
  9898. if (typeof window !== "undefined") {
  9899. window.addEventListener("gamepadconnected", JSEvents._onGamepadConnected);
  9900. window.addEventListener("gamepaddisconnected", JSEvents._onGamepadDisconnected);
  9901. var firstState = navigator.getGamepads ? navigator.getGamepads() : navigator.webkitGetGamepads ? navigator.webkitGetGamepads() : null;
  9902. if (firstState) {
  9903. JSEvents.numGamepadsConnected = firstState.length;
  9904. }
  9905. }
  9906. }),
  9907. removeAllEventListeners: (function() {
  9908. for (var i = JSEvents.eventHandlers.length - 1; i >= 0; --i) {
  9909. JSEvents._removeHandler(i);
  9910. }
  9911. JSEvents.eventHandlers = [];
  9912. JSEvents.deferredCalls = [];
  9913. window.removeEventListener("gamepadconnected", JSEvents._onGamepadConnected);
  9914. window.removeEventListener("gamepaddisconnected", JSEvents._onGamepadDisconnected);
  9915. }),
  9916. registerRemoveEventListeners: (function() {
  9917. if (!JSEvents.removeEventListenersRegistered) {
  9918. __ATEXIT__.push(JSEvents.removeAllEventListeners);
  9919. JSEvents.removeEventListenersRegistered = true;
  9920. }
  9921. }),
  9922. findEventTarget: (function(target) {
  9923. try {
  9924. if (!target) return window;
  9925. if (typeof target === "number") target = Pointer_stringify(target);
  9926. 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"];
  9927. return typeof target === "string" ? document.getElementById(target) : target;
  9928. } catch (e) {
  9929. return null;
  9930. }
  9931. }),
  9932. findCanvasEventTarget: (function(target) {
  9933. if (typeof target === "number") target = Pointer_stringify(target);
  9934. if (!target || target === "#canvas") {
  9935. if (typeof GL !== "undefined" && GL.offscreenCanvases["canvas"]) return GL.offscreenCanvases["canvas"];
  9936. return Module["canvas"];
  9937. }
  9938. if (typeof GL !== "undefined" && GL.offscreenCanvases[target]) return GL.offscreenCanvases[target];
  9939. return JSEvents.findEventTarget(target);
  9940. }),
  9941. deferredCalls: [],
  9942. deferCall: (function(targetFunction, precedence, argsList) {
  9943. function arraysHaveEqualContent(arrA, arrB) {
  9944. if (arrA.length != arrB.length) return false;
  9945. for (var i in arrA) {
  9946. if (arrA[i] != arrB[i]) return false;
  9947. }
  9948. return true;
  9949. }
  9950. for (var i in JSEvents.deferredCalls) {
  9951. var call = JSEvents.deferredCalls[i];
  9952. if (call.targetFunction == targetFunction && arraysHaveEqualContent(call.argsList, argsList)) {
  9953. return;
  9954. }
  9955. }
  9956. JSEvents.deferredCalls.push({
  9957. targetFunction: targetFunction,
  9958. precedence: precedence,
  9959. argsList: argsList
  9960. });
  9961. JSEvents.deferredCalls.sort((function(x, y) {
  9962. return x.precedence < y.precedence;
  9963. }));
  9964. }),
  9965. removeDeferredCalls: (function(targetFunction) {
  9966. for (var i = 0; i < JSEvents.deferredCalls.length; ++i) {
  9967. if (JSEvents.deferredCalls[i].targetFunction == targetFunction) {
  9968. JSEvents.deferredCalls.splice(i, 1);
  9969. --i;
  9970. }
  9971. }
  9972. }),
  9973. canPerformEventHandlerRequests: (function() {
  9974. return JSEvents.inEventHandler && JSEvents.currentEventHandler.allowsDeferredCalls;
  9975. }),
  9976. runDeferredCalls: (function() {
  9977. if (!JSEvents.canPerformEventHandlerRequests()) {
  9978. return;
  9979. }
  9980. for (var i = 0; i < JSEvents.deferredCalls.length; ++i) {
  9981. var call = JSEvents.deferredCalls[i];
  9982. JSEvents.deferredCalls.splice(i, 1);
  9983. --i;
  9984. call.targetFunction.apply(this, call.argsList);
  9985. }
  9986. }),
  9987. inEventHandler: 0,
  9988. currentEventHandler: null,
  9989. eventHandlers: [],
  9990. isInternetExplorer: (function() {
  9991. return navigator.userAgent.indexOf("MSIE") !== -1 || navigator.appVersion.indexOf("Trident/") > 0;
  9992. }),
  9993. removeAllHandlersOnTarget: (function(target, eventTypeString) {
  9994. for (var i = 0; i < JSEvents.eventHandlers.length; ++i) {
  9995. if (JSEvents.eventHandlers[i].target == target && (!eventTypeString || eventTypeString == JSEvents.eventHandlers[i].eventTypeString)) {
  9996. JSEvents._removeHandler(i--);
  9997. }
  9998. }
  9999. }),
  10000. _removeHandler: (function(i) {
  10001. var h = JSEvents.eventHandlers[i];
  10002. h.target.removeEventListener(h.eventTypeString, h.eventListenerFunc, h.useCapture);
  10003. JSEvents.eventHandlers.splice(i, 1);
  10004. }),
  10005. registerOrRemoveHandler: (function(eventHandler) {
  10006. var jsEventHandler = function jsEventHandler(event) {
  10007. ++JSEvents.inEventHandler;
  10008. JSEvents.currentEventHandler = eventHandler;
  10009. JSEvents.runDeferredCalls();
  10010. eventHandler.handlerFunc(event);
  10011. JSEvents.runDeferredCalls();
  10012. --JSEvents.inEventHandler;
  10013. };
  10014. if (eventHandler.callbackfunc) {
  10015. eventHandler.eventListenerFunc = jsEventHandler;
  10016. eventHandler.target.addEventListener(eventHandler.eventTypeString, jsEventHandler, eventHandler.useCapture);
  10017. JSEvents.eventHandlers.push(eventHandler);
  10018. JSEvents.registerRemoveEventListeners();
  10019. } else {
  10020. for (var i = 0; i < JSEvents.eventHandlers.length; ++i) {
  10021. if (JSEvents.eventHandlers[i].target == eventHandler.target && JSEvents.eventHandlers[i].eventTypeString == eventHandler.eventTypeString) {
  10022. JSEvents._removeHandler(i--);
  10023. }
  10024. }
  10025. }
  10026. }),
  10027. registerKeyEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10028. if (!JSEvents.keyEvent) JSEvents.keyEvent = _malloc(164);
  10029. var keyEventHandlerFunc = (function(event) {
  10030. var e = event || window.event;
  10031. var keyEventData = JSEvents.keyEvent;
  10032. stringToUTF8(e.key ? e.key : "", keyEventData + 0, 32);
  10033. stringToUTF8(e.code ? e.code : "", keyEventData + 32, 32);
  10034. HEAP32[keyEventData + 64 >> 2] = e.location;
  10035. HEAP32[keyEventData + 68 >> 2] = e.ctrlKey;
  10036. HEAP32[keyEventData + 72 >> 2] = e.shiftKey;
  10037. HEAP32[keyEventData + 76 >> 2] = e.altKey;
  10038. HEAP32[keyEventData + 80 >> 2] = e.metaKey;
  10039. HEAP32[keyEventData + 84 >> 2] = e.repeat;
  10040. stringToUTF8(e.locale ? e.locale : "", keyEventData + 88, 32);
  10041. stringToUTF8(e.char ? e.char : "", keyEventData + 120, 32);
  10042. HEAP32[keyEventData + 152 >> 2] = e.charCode;
  10043. HEAP32[keyEventData + 156 >> 2] = e.keyCode;
  10044. HEAP32[keyEventData + 160 >> 2] = e.which;
  10045. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, keyEventData, userData)) e.preventDefault();
  10046. });
  10047. var eventHandler = {
  10048. target: JSEvents.findEventTarget(target),
  10049. allowsDeferredCalls: JSEvents.isInternetExplorer() ? false : true,
  10050. eventTypeString: eventTypeString,
  10051. callbackfunc: callbackfunc,
  10052. handlerFunc: keyEventHandlerFunc,
  10053. useCapture: useCapture
  10054. };
  10055. JSEvents.registerOrRemoveHandler(eventHandler);
  10056. }),
  10057. getBoundingClientRectOrZeros: (function(target) {
  10058. return target.getBoundingClientRect ? target.getBoundingClientRect() : {
  10059. left: 0,
  10060. top: 0
  10061. };
  10062. }),
  10063. fillMouseEventData: (function(eventStruct, e, target) {
  10064. HEAPF64[eventStruct >> 3] = JSEvents.tick();
  10065. HEAP32[eventStruct + 8 >> 2] = e.screenX;
  10066. HEAP32[eventStruct + 12 >> 2] = e.screenY;
  10067. HEAP32[eventStruct + 16 >> 2] = e.clientX;
  10068. HEAP32[eventStruct + 20 >> 2] = e.clientY;
  10069. HEAP32[eventStruct + 24 >> 2] = e.ctrlKey;
  10070. HEAP32[eventStruct + 28 >> 2] = e.shiftKey;
  10071. HEAP32[eventStruct + 32 >> 2] = e.altKey;
  10072. HEAP32[eventStruct + 36 >> 2] = e.metaKey;
  10073. HEAP16[eventStruct + 40 >> 1] = e.button;
  10074. HEAP16[eventStruct + 42 >> 1] = e.buttons;
  10075. HEAP32[eventStruct + 44 >> 2] = e["movementX"];
  10076. HEAP32[eventStruct + 48 >> 2] = e["movementY"];
  10077. if (Module["canvas"]) {
  10078. var rect = Module["canvas"].getBoundingClientRect();
  10079. HEAP32[eventStruct + 60 >> 2] = e.clientX - rect.left;
  10080. HEAP32[eventStruct + 64 >> 2] = e.clientY - rect.top;
  10081. } else {
  10082. HEAP32[eventStruct + 60 >> 2] = 0;
  10083. HEAP32[eventStruct + 64 >> 2] = 0;
  10084. }
  10085. if (target) {
  10086. var rect = JSEvents.getBoundingClientRectOrZeros(target);
  10087. HEAP32[eventStruct + 52 >> 2] = e.clientX - rect.left;
  10088. HEAP32[eventStruct + 56 >> 2] = e.clientY - rect.top;
  10089. } else {
  10090. HEAP32[eventStruct + 52 >> 2] = 0;
  10091. HEAP32[eventStruct + 56 >> 2] = 0;
  10092. }
  10093. if (e.type !== "wheel" && e.type !== "mousewheel") {
  10094. JSEvents.previousScreenX = e.screenX;
  10095. JSEvents.previousScreenY = e.screenY;
  10096. }
  10097. }),
  10098. registerMouseEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10099. if (!JSEvents.mouseEvent) JSEvents.mouseEvent = _malloc(72);
  10100. target = JSEvents.findEventTarget(target);
  10101. var mouseEventHandlerFunc = (function(event) {
  10102. var e = event || window.event;
  10103. JSEvents.fillMouseEventData(JSEvents.mouseEvent, e, target);
  10104. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.mouseEvent, userData)) e.preventDefault();
  10105. });
  10106. var eventHandler = {
  10107. target: target,
  10108. allowsDeferredCalls: eventTypeString != "mousemove" && eventTypeString != "mouseenter" && eventTypeString != "mouseleave",
  10109. eventTypeString: eventTypeString,
  10110. callbackfunc: callbackfunc,
  10111. handlerFunc: mouseEventHandlerFunc,
  10112. useCapture: useCapture
  10113. };
  10114. if (JSEvents.isInternetExplorer() && eventTypeString == "mousedown") eventHandler.allowsDeferredCalls = false;
  10115. JSEvents.registerOrRemoveHandler(eventHandler);
  10116. }),
  10117. registerWheelEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10118. if (!JSEvents.wheelEvent) JSEvents.wheelEvent = _malloc(104);
  10119. target = JSEvents.findEventTarget(target);
  10120. var wheelHandlerFunc = (function(event) {
  10121. var e = event || window.event;
  10122. var wheelEvent = JSEvents.wheelEvent;
  10123. JSEvents.fillMouseEventData(wheelEvent, e, target);
  10124. HEAPF64[wheelEvent + 72 >> 3] = e["deltaX"];
  10125. HEAPF64[wheelEvent + 80 >> 3] = e["deltaY"];
  10126. HEAPF64[wheelEvent + 88 >> 3] = e["deltaZ"];
  10127. HEAP32[wheelEvent + 96 >> 2] = e["deltaMode"];
  10128. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, wheelEvent, userData)) e.preventDefault();
  10129. });
  10130. var mouseWheelHandlerFunc = (function(event) {
  10131. var e = event || window.event;
  10132. JSEvents.fillMouseEventData(JSEvents.wheelEvent, e, target);
  10133. HEAPF64[JSEvents.wheelEvent + 72 >> 3] = e["wheelDeltaX"] || 0;
  10134. HEAPF64[JSEvents.wheelEvent + 80 >> 3] = -(e["wheelDeltaY"] ? e["wheelDeltaY"] : e["wheelDelta"]);
  10135. HEAPF64[JSEvents.wheelEvent + 88 >> 3] = 0;
  10136. HEAP32[JSEvents.wheelEvent + 96 >> 2] = 0;
  10137. var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.wheelEvent, userData);
  10138. if (shouldCancel) {
  10139. e.preventDefault();
  10140. }
  10141. });
  10142. var eventHandler = {
  10143. target: target,
  10144. allowsDeferredCalls: true,
  10145. eventTypeString: eventTypeString,
  10146. callbackfunc: callbackfunc,
  10147. handlerFunc: eventTypeString == "wheel" ? wheelHandlerFunc : mouseWheelHandlerFunc,
  10148. useCapture: useCapture
  10149. };
  10150. JSEvents.registerOrRemoveHandler(eventHandler);
  10151. }),
  10152. pageScrollPos: (function() {
  10153. if (window.pageXOffset > 0 || window.pageYOffset > 0) {
  10154. return [ window.pageXOffset, window.pageYOffset ];
  10155. }
  10156. if (typeof document.documentElement.scrollLeft !== "undefined" || typeof document.documentElement.scrollTop !== "undefined") {
  10157. return [ document.documentElement.scrollLeft, document.documentElement.scrollTop ];
  10158. }
  10159. return [ document.body.scrollLeft | 0, document.body.scrollTop | 0 ];
  10160. }),
  10161. registerUiEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10162. if (!JSEvents.uiEvent) JSEvents.uiEvent = _malloc(36);
  10163. if (eventTypeString == "scroll" && !target) {
  10164. target = document;
  10165. } else {
  10166. target = JSEvents.findEventTarget(target);
  10167. }
  10168. var uiEventHandlerFunc = (function(event) {
  10169. var e = event || window.event;
  10170. if (e.target != target) {
  10171. return;
  10172. }
  10173. var scrollPos = JSEvents.pageScrollPos();
  10174. var uiEvent = JSEvents.uiEvent;
  10175. HEAP32[uiEvent >> 2] = e.detail;
  10176. HEAP32[uiEvent + 4 >> 2] = document.body.clientWidth;
  10177. HEAP32[uiEvent + 8 >> 2] = document.body.clientHeight;
  10178. HEAP32[uiEvent + 12 >> 2] = window.innerWidth;
  10179. HEAP32[uiEvent + 16 >> 2] = window.innerHeight;
  10180. HEAP32[uiEvent + 20 >> 2] = window.outerWidth;
  10181. HEAP32[uiEvent + 24 >> 2] = window.outerHeight;
  10182. HEAP32[uiEvent + 28 >> 2] = scrollPos[0];
  10183. HEAP32[uiEvent + 32 >> 2] = scrollPos[1];
  10184. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, uiEvent, userData)) e.preventDefault();
  10185. });
  10186. var eventHandler = {
  10187. target: target,
  10188. allowsDeferredCalls: false,
  10189. eventTypeString: eventTypeString,
  10190. callbackfunc: callbackfunc,
  10191. handlerFunc: uiEventHandlerFunc,
  10192. useCapture: useCapture
  10193. };
  10194. JSEvents.registerOrRemoveHandler(eventHandler);
  10195. }),
  10196. getNodeNameForTarget: (function(target) {
  10197. if (!target) return "";
  10198. if (target == window) return "#window";
  10199. if (target == window.screen) return "#screen";
  10200. return target && target.nodeName ? target.nodeName : "";
  10201. }),
  10202. registerFocusEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10203. if (!JSEvents.focusEvent) JSEvents.focusEvent = _malloc(256);
  10204. var focusEventHandlerFunc = (function(event) {
  10205. var e = event || window.event;
  10206. var nodeName = JSEvents.getNodeNameForTarget(e.target);
  10207. var id = e.target.id ? e.target.id : "";
  10208. var focusEvent = JSEvents.focusEvent;
  10209. stringToUTF8(nodeName, focusEvent + 0, 128);
  10210. stringToUTF8(id, focusEvent + 128, 128);
  10211. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, focusEvent, userData)) e.preventDefault();
  10212. });
  10213. var eventHandler = {
  10214. target: JSEvents.findEventTarget(target),
  10215. allowsDeferredCalls: false,
  10216. eventTypeString: eventTypeString,
  10217. callbackfunc: callbackfunc,
  10218. handlerFunc: focusEventHandlerFunc,
  10219. useCapture: useCapture
  10220. };
  10221. JSEvents.registerOrRemoveHandler(eventHandler);
  10222. }),
  10223. tick: (function() {
  10224. if (window["performance"] && window["performance"]["now"]) return window["performance"]["now"](); else return Date.now();
  10225. }),
  10226. fillDeviceOrientationEventData: (function(eventStruct, e, target) {
  10227. HEAPF64[eventStruct >> 3] = JSEvents.tick();
  10228. HEAPF64[eventStruct + 8 >> 3] = e.alpha;
  10229. HEAPF64[eventStruct + 16 >> 3] = e.beta;
  10230. HEAPF64[eventStruct + 24 >> 3] = e.gamma;
  10231. HEAP32[eventStruct + 32 >> 2] = e.absolute;
  10232. }),
  10233. registerDeviceOrientationEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10234. if (!JSEvents.deviceOrientationEvent) JSEvents.deviceOrientationEvent = _malloc(40);
  10235. var deviceOrientationEventHandlerFunc = (function(event) {
  10236. var e = event || window.event;
  10237. JSEvents.fillDeviceOrientationEventData(JSEvents.deviceOrientationEvent, e, target);
  10238. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.deviceOrientationEvent, userData)) e.preventDefault();
  10239. });
  10240. var eventHandler = {
  10241. target: JSEvents.findEventTarget(target),
  10242. allowsDeferredCalls: false,
  10243. eventTypeString: eventTypeString,
  10244. callbackfunc: callbackfunc,
  10245. handlerFunc: deviceOrientationEventHandlerFunc,
  10246. useCapture: useCapture
  10247. };
  10248. JSEvents.registerOrRemoveHandler(eventHandler);
  10249. }),
  10250. fillDeviceMotionEventData: (function(eventStruct, e, target) {
  10251. HEAPF64[eventStruct >> 3] = JSEvents.tick();
  10252. HEAPF64[eventStruct + 8 >> 3] = e.acceleration.x;
  10253. HEAPF64[eventStruct + 16 >> 3] = e.acceleration.y;
  10254. HEAPF64[eventStruct + 24 >> 3] = e.acceleration.z;
  10255. HEAPF64[eventStruct + 32 >> 3] = e.accelerationIncludingGravity.x;
  10256. HEAPF64[eventStruct + 40 >> 3] = e.accelerationIncludingGravity.y;
  10257. HEAPF64[eventStruct + 48 >> 3] = e.accelerationIncludingGravity.z;
  10258. HEAPF64[eventStruct + 56 >> 3] = e.rotationRate.alpha;
  10259. HEAPF64[eventStruct + 64 >> 3] = e.rotationRate.beta;
  10260. HEAPF64[eventStruct + 72 >> 3] = e.rotationRate.gamma;
  10261. }),
  10262. registerDeviceMotionEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10263. if (!JSEvents.deviceMotionEvent) JSEvents.deviceMotionEvent = _malloc(80);
  10264. var deviceMotionEventHandlerFunc = (function(event) {
  10265. var e = event || window.event;
  10266. JSEvents.fillDeviceMotionEventData(JSEvents.deviceMotionEvent, e, target);
  10267. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.deviceMotionEvent, userData)) e.preventDefault();
  10268. });
  10269. var eventHandler = {
  10270. target: JSEvents.findEventTarget(target),
  10271. allowsDeferredCalls: false,
  10272. eventTypeString: eventTypeString,
  10273. callbackfunc: callbackfunc,
  10274. handlerFunc: deviceMotionEventHandlerFunc,
  10275. useCapture: useCapture
  10276. };
  10277. JSEvents.registerOrRemoveHandler(eventHandler);
  10278. }),
  10279. screenOrientation: (function() {
  10280. if (!window.screen) return undefined;
  10281. return window.screen.orientation || window.screen.mozOrientation || window.screen.webkitOrientation || window.screen.msOrientation;
  10282. }),
  10283. fillOrientationChangeEventData: (function(eventStruct, e) {
  10284. var orientations = [ "portrait-primary", "portrait-secondary", "landscape-primary", "landscape-secondary" ];
  10285. var orientations2 = [ "portrait", "portrait", "landscape", "landscape" ];
  10286. var orientationString = JSEvents.screenOrientation();
  10287. var orientation = orientations.indexOf(orientationString);
  10288. if (orientation == -1) {
  10289. orientation = orientations2.indexOf(orientationString);
  10290. }
  10291. HEAP32[eventStruct >> 2] = 1 << orientation;
  10292. HEAP32[eventStruct + 4 >> 2] = window.orientation;
  10293. }),
  10294. registerOrientationChangeEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10295. if (!JSEvents.orientationChangeEvent) JSEvents.orientationChangeEvent = _malloc(8);
  10296. if (!target) {
  10297. target = window.screen;
  10298. } else {
  10299. target = JSEvents.findEventTarget(target);
  10300. }
  10301. var orientationChangeEventHandlerFunc = (function(event) {
  10302. var e = event || window.event;
  10303. var orientationChangeEvent = JSEvents.orientationChangeEvent;
  10304. JSEvents.fillOrientationChangeEventData(orientationChangeEvent, e);
  10305. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, orientationChangeEvent, userData)) e.preventDefault();
  10306. });
  10307. if (eventTypeString == "orientationchange" && window.screen.mozOrientation !== undefined) {
  10308. eventTypeString = "mozorientationchange";
  10309. }
  10310. var eventHandler = {
  10311. target: target,
  10312. allowsDeferredCalls: false,
  10313. eventTypeString: eventTypeString,
  10314. callbackfunc: callbackfunc,
  10315. handlerFunc: orientationChangeEventHandlerFunc,
  10316. useCapture: useCapture
  10317. };
  10318. JSEvents.registerOrRemoveHandler(eventHandler);
  10319. }),
  10320. fullscreenEnabled: (function() {
  10321. return document.fullscreenEnabled || document.mozFullScreenEnabled || document.webkitFullscreenEnabled || document.msFullscreenEnabled;
  10322. }),
  10323. fillFullscreenChangeEventData: (function(eventStruct, e) {
  10324. var fullscreenElement = document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement;
  10325. var isFullscreen = !!fullscreenElement;
  10326. HEAP32[eventStruct >> 2] = isFullscreen;
  10327. HEAP32[eventStruct + 4 >> 2] = JSEvents.fullscreenEnabled();
  10328. var reportedElement = isFullscreen ? fullscreenElement : JSEvents.previousFullscreenElement;
  10329. var nodeName = JSEvents.getNodeNameForTarget(reportedElement);
  10330. var id = reportedElement && reportedElement.id ? reportedElement.id : "";
  10331. stringToUTF8(nodeName, eventStruct + 8, 128);
  10332. stringToUTF8(id, eventStruct + 136, 128);
  10333. HEAP32[eventStruct + 264 >> 2] = reportedElement ? reportedElement.clientWidth : 0;
  10334. HEAP32[eventStruct + 268 >> 2] = reportedElement ? reportedElement.clientHeight : 0;
  10335. HEAP32[eventStruct + 272 >> 2] = screen.width;
  10336. HEAP32[eventStruct + 276 >> 2] = screen.height;
  10337. if (isFullscreen) {
  10338. JSEvents.previousFullscreenElement = fullscreenElement;
  10339. }
  10340. }),
  10341. registerFullscreenChangeEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10342. if (!JSEvents.fullscreenChangeEvent) JSEvents.fullscreenChangeEvent = _malloc(280);
  10343. if (!target) target = document; else target = JSEvents.findEventTarget(target);
  10344. var fullscreenChangeEventhandlerFunc = (function(event) {
  10345. var e = event || window.event;
  10346. var fullscreenChangeEvent = JSEvents.fullscreenChangeEvent;
  10347. JSEvents.fillFullscreenChangeEventData(fullscreenChangeEvent, e);
  10348. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, fullscreenChangeEvent, userData)) e.preventDefault();
  10349. });
  10350. var eventHandler = {
  10351. target: target,
  10352. allowsDeferredCalls: false,
  10353. eventTypeString: eventTypeString,
  10354. callbackfunc: callbackfunc,
  10355. handlerFunc: fullscreenChangeEventhandlerFunc,
  10356. useCapture: useCapture
  10357. };
  10358. JSEvents.registerOrRemoveHandler(eventHandler);
  10359. }),
  10360. resizeCanvasForFullscreen: (function(target, strategy) {
  10361. var restoreOldStyle = __registerRestoreOldStyle(target);
  10362. var cssWidth = strategy.softFullscreen ? window.innerWidth : screen.width;
  10363. var cssHeight = strategy.softFullscreen ? window.innerHeight : screen.height;
  10364. var rect = target.getBoundingClientRect();
  10365. var windowedCssWidth = rect.right - rect.left;
  10366. var windowedCssHeight = rect.bottom - rect.top;
  10367. var canvasSize = emscripten_get_canvas_element_size_js(target.id);
  10368. var windowedRttWidth = canvasSize[0];
  10369. var windowedRttHeight = canvasSize[1];
  10370. if (strategy.scaleMode == 3) {
  10371. __setLetterbox(target, (cssHeight - windowedCssHeight) / 2, (cssWidth - windowedCssWidth) / 2);
  10372. cssWidth = windowedCssWidth;
  10373. cssHeight = windowedCssHeight;
  10374. } else if (strategy.scaleMode == 2) {
  10375. if (cssWidth * windowedRttHeight < windowedRttWidth * cssHeight) {
  10376. var desiredCssHeight = windowedRttHeight * cssWidth / windowedRttWidth;
  10377. __setLetterbox(target, (cssHeight - desiredCssHeight) / 2, 0);
  10378. cssHeight = desiredCssHeight;
  10379. } else {
  10380. var desiredCssWidth = windowedRttWidth * cssHeight / windowedRttHeight;
  10381. __setLetterbox(target, 0, (cssWidth - desiredCssWidth) / 2);
  10382. cssWidth = desiredCssWidth;
  10383. }
  10384. }
  10385. if (!target.style.backgroundColor) target.style.backgroundColor = "black";
  10386. if (!document.body.style.backgroundColor) document.body.style.backgroundColor = "black";
  10387. target.style.width = cssWidth + "px";
  10388. target.style.height = cssHeight + "px";
  10389. if (strategy.filteringMode == 1) {
  10390. target.style.imageRendering = "optimizeSpeed";
  10391. target.style.imageRendering = "-moz-crisp-edges";
  10392. target.style.imageRendering = "-o-crisp-edges";
  10393. target.style.imageRendering = "-webkit-optimize-contrast";
  10394. target.style.imageRendering = "optimize-contrast";
  10395. target.style.imageRendering = "crisp-edges";
  10396. target.style.imageRendering = "pixelated";
  10397. }
  10398. var dpiScale = strategy.canvasResolutionScaleMode == 2 ? window.devicePixelRatio : 1;
  10399. if (strategy.canvasResolutionScaleMode != 0) {
  10400. var newWidth = cssWidth * dpiScale | 0;
  10401. var newHeight = cssHeight * dpiScale | 0;
  10402. if (!target.controlTransferredOffscreen) {
  10403. target.width = newWidth;
  10404. target.height = newHeight;
  10405. } else {
  10406. emscripten_set_canvas_element_size_js(target.id, newWidth, newHeight);
  10407. }
  10408. if (target.GLctxObject) target.GLctxObject.GLctx.viewport(0, 0, newWidth, newHeight);
  10409. }
  10410. return restoreOldStyle;
  10411. }),
  10412. requestFullscreen: (function(target, strategy) {
  10413. if (strategy.scaleMode != 0 || strategy.canvasResolutionScaleMode != 0) {
  10414. JSEvents.resizeCanvasForFullscreen(target, strategy);
  10415. }
  10416. if (target.requestFullscreen) {
  10417. target.requestFullscreen();
  10418. } else if (target.msRequestFullscreen) {
  10419. target.msRequestFullscreen();
  10420. } else if (target.mozRequestFullScreen) {
  10421. target.mozRequestFullScreen();
  10422. } else if (target.mozRequestFullscreen) {
  10423. target.mozRequestFullscreen();
  10424. } else if (target.webkitRequestFullscreen) {
  10425. target.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
  10426. } else {
  10427. if (typeof JSEvents.fullscreenEnabled() === "undefined") {
  10428. return -1;
  10429. } else {
  10430. return -3;
  10431. }
  10432. }
  10433. if (strategy.canvasResizedCallback) {
  10434. Module["dynCall_iiii"](strategy.canvasResizedCallback, 37, 0, strategy.canvasResizedCallbackUserData);
  10435. }
  10436. return 0;
  10437. }),
  10438. fillPointerlockChangeEventData: (function(eventStruct, e) {
  10439. var pointerLockElement = document.pointerLockElement || document.mozPointerLockElement || document.webkitPointerLockElement || document.msPointerLockElement;
  10440. var isPointerlocked = !!pointerLockElement;
  10441. HEAP32[eventStruct >> 2] = isPointerlocked;
  10442. var nodeName = JSEvents.getNodeNameForTarget(pointerLockElement);
  10443. var id = pointerLockElement && pointerLockElement.id ? pointerLockElement.id : "";
  10444. stringToUTF8(nodeName, eventStruct + 4, 128);
  10445. stringToUTF8(id, eventStruct + 132, 128);
  10446. }),
  10447. registerPointerlockChangeEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10448. if (!JSEvents.pointerlockChangeEvent) JSEvents.pointerlockChangeEvent = _malloc(260);
  10449. if (!target) target = document; else target = JSEvents.findEventTarget(target);
  10450. var pointerlockChangeEventHandlerFunc = (function(event) {
  10451. var e = event || window.event;
  10452. var pointerlockChangeEvent = JSEvents.pointerlockChangeEvent;
  10453. JSEvents.fillPointerlockChangeEventData(pointerlockChangeEvent, e);
  10454. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, pointerlockChangeEvent, userData)) e.preventDefault();
  10455. });
  10456. var eventHandler = {
  10457. target: target,
  10458. allowsDeferredCalls: false,
  10459. eventTypeString: eventTypeString,
  10460. callbackfunc: callbackfunc,
  10461. handlerFunc: pointerlockChangeEventHandlerFunc,
  10462. useCapture: useCapture
  10463. };
  10464. JSEvents.registerOrRemoveHandler(eventHandler);
  10465. }),
  10466. registerPointerlockErrorEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) {
  10467. if (!target) target = document; else target = JSEvents.findEventTarget(target);
  10468. var pointerlockErrorEventHandlerFunc = (function(event) {
  10469. var e = event || window.event;
  10470. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData)) e.preventDefault();
  10471. });
  10472. var eventHandler = {
  10473. target: target,
  10474. allowsDeferredCalls: false,
  10475. eventTypeString: eventTypeString,
  10476. callbackfunc: callbackfunc,
  10477. handlerFunc: pointerlockErrorEventHandlerFunc,
  10478. useCapture: useCapture
  10479. };
  10480. JSEvents.registerOrRemoveHandler(eventHandler);
  10481. }),
  10482. requestPointerLock: (function(target) {
  10483. if (target.requestPointerLock) {
  10484. target.requestPointerLock();
  10485. } else if (target.mozRequestPointerLock) {
  10486. target.mozRequestPointerLock();
  10487. } else if (target.webkitRequestPointerLock) {
  10488. target.webkitRequestPointerLock();
  10489. } else if (target.msRequestPointerLock) {
  10490. target.msRequestPointerLock();
  10491. } else {
  10492. if (document.body.requestPointerLock || document.body.mozRequestPointerLock || document.body.webkitRequestPointerLock || document.body.msRequestPointerLock) {
  10493. return -3;
  10494. } else {
  10495. return -1;
  10496. }
  10497. }
  10498. return 0;
  10499. }),
  10500. fillVisibilityChangeEventData: (function(eventStruct, e) {
  10501. var visibilityStates = [ "hidden", "visible", "prerender", "unloaded" ];
  10502. var visibilityState = visibilityStates.indexOf(document.visibilityState);
  10503. HEAP32[eventStruct >> 2] = document.hidden;
  10504. HEAP32[eventStruct + 4 >> 2] = visibilityState;
  10505. }),
  10506. registerVisibilityChangeEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10507. if (!JSEvents.visibilityChangeEvent) JSEvents.visibilityChangeEvent = _malloc(8);
  10508. if (!target) target = document; else target = JSEvents.findEventTarget(target);
  10509. var visibilityChangeEventHandlerFunc = (function(event) {
  10510. var e = event || window.event;
  10511. var visibilityChangeEvent = JSEvents.visibilityChangeEvent;
  10512. JSEvents.fillVisibilityChangeEventData(visibilityChangeEvent, e);
  10513. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, visibilityChangeEvent, userData)) e.preventDefault();
  10514. });
  10515. var eventHandler = {
  10516. target: target,
  10517. allowsDeferredCalls: false,
  10518. eventTypeString: eventTypeString,
  10519. callbackfunc: callbackfunc,
  10520. handlerFunc: visibilityChangeEventHandlerFunc,
  10521. useCapture: useCapture
  10522. };
  10523. JSEvents.registerOrRemoveHandler(eventHandler);
  10524. }),
  10525. registerTouchEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10526. if (!JSEvents.touchEvent) JSEvents.touchEvent = _malloc(1684);
  10527. target = JSEvents.findEventTarget(target);
  10528. var touchEventHandlerFunc = (function(event) {
  10529. var e = event || window.event;
  10530. var touches = {};
  10531. for (var i = 0; i < e.touches.length; ++i) {
  10532. var touch = e.touches[i];
  10533. touches[touch.identifier] = touch;
  10534. }
  10535. for (var i = 0; i < e.changedTouches.length; ++i) {
  10536. var touch = e.changedTouches[i];
  10537. touches[touch.identifier] = touch;
  10538. touch.changed = true;
  10539. }
  10540. for (var i = 0; i < e.targetTouches.length; ++i) {
  10541. var touch = e.targetTouches[i];
  10542. touches[touch.identifier].onTarget = true;
  10543. }
  10544. var touchEvent = JSEvents.touchEvent;
  10545. var ptr = touchEvent;
  10546. HEAP32[ptr + 4 >> 2] = e.ctrlKey;
  10547. HEAP32[ptr + 8 >> 2] = e.shiftKey;
  10548. HEAP32[ptr + 12 >> 2] = e.altKey;
  10549. HEAP32[ptr + 16 >> 2] = e.metaKey;
  10550. ptr += 20;
  10551. var canvasRect = Module["canvas"] ? Module["canvas"].getBoundingClientRect() : undefined;
  10552. var targetRect = JSEvents.getBoundingClientRectOrZeros(target);
  10553. var numTouches = 0;
  10554. for (var i in touches) {
  10555. var t = touches[i];
  10556. HEAP32[ptr >> 2] = t.identifier;
  10557. HEAP32[ptr + 4 >> 2] = t.screenX;
  10558. HEAP32[ptr + 8 >> 2] = t.screenY;
  10559. HEAP32[ptr + 12 >> 2] = t.clientX;
  10560. HEAP32[ptr + 16 >> 2] = t.clientY;
  10561. HEAP32[ptr + 20 >> 2] = t.pageX;
  10562. HEAP32[ptr + 24 >> 2] = t.pageY;
  10563. HEAP32[ptr + 28 >> 2] = t.changed;
  10564. HEAP32[ptr + 32 >> 2] = t.onTarget;
  10565. if (canvasRect) {
  10566. HEAP32[ptr + 44 >> 2] = t.clientX - canvasRect.left;
  10567. HEAP32[ptr + 48 >> 2] = t.clientY - canvasRect.top;
  10568. } else {
  10569. HEAP32[ptr + 44 >> 2] = 0;
  10570. HEAP32[ptr + 48 >> 2] = 0;
  10571. }
  10572. HEAP32[ptr + 36 >> 2] = t.clientX - targetRect.left;
  10573. HEAP32[ptr + 40 >> 2] = t.clientY - targetRect.top;
  10574. ptr += 52;
  10575. if (++numTouches >= 32) {
  10576. break;
  10577. }
  10578. }
  10579. HEAP32[touchEvent >> 2] = numTouches;
  10580. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, touchEvent, userData)) e.preventDefault();
  10581. });
  10582. var eventHandler = {
  10583. target: target,
  10584. allowsDeferredCalls: eventTypeString == "touchstart" || eventTypeString == "touchend",
  10585. eventTypeString: eventTypeString,
  10586. callbackfunc: callbackfunc,
  10587. handlerFunc: touchEventHandlerFunc,
  10588. useCapture: useCapture
  10589. };
  10590. JSEvents.registerOrRemoveHandler(eventHandler);
  10591. }),
  10592. fillGamepadEventData: (function(eventStruct, e) {
  10593. HEAPF64[eventStruct >> 3] = e.timestamp;
  10594. for (var i = 0; i < e.axes.length; ++i) {
  10595. HEAPF64[eventStruct + i * 8 + 16 >> 3] = e.axes[i];
  10596. }
  10597. for (var i = 0; i < e.buttons.length; ++i) {
  10598. if (typeof e.buttons[i] === "object") {
  10599. HEAPF64[eventStruct + i * 8 + 528 >> 3] = e.buttons[i].value;
  10600. } else {
  10601. HEAPF64[eventStruct + i * 8 + 528 >> 3] = e.buttons[i];
  10602. }
  10603. }
  10604. for (var i = 0; i < e.buttons.length; ++i) {
  10605. if (typeof e.buttons[i] === "object") {
  10606. HEAP32[eventStruct + i * 4 + 1040 >> 2] = e.buttons[i].pressed;
  10607. } else {
  10608. HEAP32[eventStruct + i * 4 + 1040 >> 2] = e.buttons[i] == 1;
  10609. }
  10610. }
  10611. HEAP32[eventStruct + 1296 >> 2] = e.connected;
  10612. HEAP32[eventStruct + 1300 >> 2] = e.index;
  10613. HEAP32[eventStruct + 8 >> 2] = e.axes.length;
  10614. HEAP32[eventStruct + 12 >> 2] = e.buttons.length;
  10615. stringToUTF8(e.id, eventStruct + 1304, 64);
  10616. stringToUTF8(e.mapping, eventStruct + 1368, 64);
  10617. }),
  10618. registerGamepadEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10619. if (!JSEvents.gamepadEvent) JSEvents.gamepadEvent = _malloc(1432);
  10620. var gamepadEventHandlerFunc = (function(event) {
  10621. var e = event || window.event;
  10622. var gamepadEvent = JSEvents.gamepadEvent;
  10623. JSEvents.fillGamepadEventData(gamepadEvent, e.gamepad);
  10624. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, gamepadEvent, userData)) e.preventDefault();
  10625. });
  10626. var eventHandler = {
  10627. target: JSEvents.findEventTarget(target),
  10628. allowsDeferredCalls: true,
  10629. eventTypeString: eventTypeString,
  10630. callbackfunc: callbackfunc,
  10631. handlerFunc: gamepadEventHandlerFunc,
  10632. useCapture: useCapture
  10633. };
  10634. JSEvents.registerOrRemoveHandler(eventHandler);
  10635. }),
  10636. registerBeforeUnloadEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) {
  10637. var beforeUnloadEventHandlerFunc = (function(event) {
  10638. var e = event || window.event;
  10639. var confirmationMessage = Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData);
  10640. if (confirmationMessage) {
  10641. confirmationMessage = Pointer_stringify(confirmationMessage);
  10642. }
  10643. if (confirmationMessage) {
  10644. e.preventDefault();
  10645. e.returnValue = confirmationMessage;
  10646. return confirmationMessage;
  10647. }
  10648. });
  10649. var eventHandler = {
  10650. target: JSEvents.findEventTarget(target),
  10651. allowsDeferredCalls: false,
  10652. eventTypeString: eventTypeString,
  10653. callbackfunc: callbackfunc,
  10654. handlerFunc: beforeUnloadEventHandlerFunc,
  10655. useCapture: useCapture
  10656. };
  10657. JSEvents.registerOrRemoveHandler(eventHandler);
  10658. }),
  10659. battery: (function() {
  10660. return navigator.battery || navigator.mozBattery || navigator.webkitBattery;
  10661. }),
  10662. fillBatteryEventData: (function(eventStruct, e) {
  10663. HEAPF64[eventStruct >> 3] = e.chargingTime;
  10664. HEAPF64[eventStruct + 8 >> 3] = e.dischargingTime;
  10665. HEAPF64[eventStruct + 16 >> 3] = e.level;
  10666. HEAP32[eventStruct + 24 >> 2] = e.charging;
  10667. }),
  10668. registerBatteryEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10669. if (!JSEvents.batteryEvent) JSEvents.batteryEvent = _malloc(32);
  10670. var batteryEventHandlerFunc = (function(event) {
  10671. var e = event || window.event;
  10672. var batteryEvent = JSEvents.batteryEvent;
  10673. JSEvents.fillBatteryEventData(batteryEvent, JSEvents.battery());
  10674. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, batteryEvent, userData)) e.preventDefault();
  10675. });
  10676. var eventHandler = {
  10677. target: JSEvents.findEventTarget(target),
  10678. allowsDeferredCalls: false,
  10679. eventTypeString: eventTypeString,
  10680. callbackfunc: callbackfunc,
  10681. handlerFunc: batteryEventHandlerFunc,
  10682. useCapture: useCapture
  10683. };
  10684. JSEvents.registerOrRemoveHandler(eventHandler);
  10685. }),
  10686. registerWebGlEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10687. if (!target) target = Module["canvas"];
  10688. var webGlEventHandlerFunc = (function(event) {
  10689. var e = event || window.event;
  10690. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData)) e.preventDefault();
  10691. });
  10692. var eventHandler = {
  10693. target: JSEvents.findEventTarget(target),
  10694. allowsDeferredCalls: false,
  10695. eventTypeString: eventTypeString,
  10696. callbackfunc: callbackfunc,
  10697. handlerFunc: webGlEventHandlerFunc,
  10698. useCapture: useCapture
  10699. };
  10700. JSEvents.registerOrRemoveHandler(eventHandler);
  10701. })
  10702. };
  10703. var __currentFullscreenStrategy = {};
  10704. function _emscripten_exit_fullscreen() {
  10705. if (typeof JSEvents.fullscreenEnabled() === "undefined") return -1;
  10706. JSEvents.removeDeferredCalls(JSEvents.requestFullscreen);
  10707. if (document.exitFullscreen) {
  10708. document.exitFullscreen();
  10709. } else if (document.msExitFullscreen) {
  10710. document.msExitFullscreen();
  10711. } else if (document.mozCancelFullScreen) {
  10712. document.mozCancelFullScreen();
  10713. } else if (document.webkitExitFullscreen) {
  10714. document.webkitExitFullscreen();
  10715. } else {
  10716. return -1;
  10717. }
  10718. if (__currentFullscreenStrategy.canvasResizedCallback) {
  10719. Module["dynCall_iiii"](__currentFullscreenStrategy.canvasResizedCallback, 37, 0, __currentFullscreenStrategy.canvasResizedCallbackUserData);
  10720. }
  10721. return 0;
  10722. }
  10723. function _emscripten_exit_pointerlock() {
  10724. JSEvents.removeDeferredCalls(JSEvents.requestPointerLock);
  10725. if (document.exitPointerLock) {
  10726. document.exitPointerLock();
  10727. } else if (document.msExitPointerLock) {
  10728. document.msExitPointerLock();
  10729. } else if (document.mozExitPointerLock) {
  10730. document.mozExitPointerLock();
  10731. } else if (document.webkitExitPointerLock) {
  10732. document.webkitExitPointerLock();
  10733. } else {
  10734. return -1;
  10735. }
  10736. return 0;
  10737. }
  10738. function _emscripten_get_fullscreen_status(fullscreenStatus) {
  10739. if (typeof JSEvents.fullscreenEnabled() === "undefined") return -1;
  10740. JSEvents.fillFullscreenChangeEventData(fullscreenStatus);
  10741. return 0;
  10742. }
  10743. function __emscripten_sample_gamepad_data() {
  10744. if (!JSEvents.numGamepadsConnected) return;
  10745. if (Browser.mainLoop.currentFrameNumber !== JSEvents.lastGamepadStateFrame || !Browser.mainLoop.currentFrameNumber) {
  10746. JSEvents.lastGamepadState = navigator.getGamepads ? navigator.getGamepads() : navigator.webkitGetGamepads ? navigator.webkitGetGamepads : null;
  10747. JSEvents.lastGamepadStateFrame = Browser.mainLoop.currentFrameNumber;
  10748. }
  10749. }
  10750. function _emscripten_get_gamepad_status(index, gamepadState) {
  10751. __emscripten_sample_gamepad_data();
  10752. if (!JSEvents.lastGamepadState) return -1;
  10753. if (index < 0 || index >= JSEvents.lastGamepadState.length) return -5;
  10754. if (!JSEvents.lastGamepadState[index]) return -7;
  10755. JSEvents.fillGamepadEventData(gamepadState, JSEvents.lastGamepadState[index]);
  10756. return 0;
  10757. }
  10758. function _emscripten_get_main_loop_timing(mode, value) {
  10759. if (mode) HEAP32[mode >> 2] = Browser.mainLoop.timingMode;
  10760. if (value) HEAP32[value >> 2] = Browser.mainLoop.timingValue;
  10761. }
  10762. function _emscripten_get_num_gamepads() {
  10763. if (!JSEvents.numGamepadsConnected) return 0;
  10764. __emscripten_sample_gamepad_data();
  10765. if (!JSEvents.lastGamepadState) return -1;
  10766. return JSEvents.lastGamepadState.length;
  10767. }
  10768. function _emscripten_has_threading_support() {
  10769. return 0;
  10770. }
  10771. function _emscripten_html5_remove_all_event_listeners() {
  10772. JSEvents.removeAllEventListeners();
  10773. }
  10774. function _emscripten_is_webgl_context_lost(target) {
  10775. if (!Module.ctx) return true;
  10776. return Module.ctx.isContextLost();
  10777. }
  10778. function __reallyNegative(x) {
  10779. return x < 0 || x === 0 && 1 / x === -Infinity;
  10780. }
  10781. function __formatString(format, varargs) {
  10782. assert((varargs & 3) === 0);
  10783. var textIndex = format;
  10784. var argIndex = varargs;
  10785. function prepVararg(ptr, type) {
  10786. if (type === "double" || type === "i64") {
  10787. if (ptr & 7) {
  10788. assert((ptr & 7) === 4);
  10789. ptr += 4;
  10790. }
  10791. } else {
  10792. assert((ptr & 3) === 0);
  10793. }
  10794. return ptr;
  10795. }
  10796. function getNextArg(type) {
  10797. var ret;
  10798. argIndex = prepVararg(argIndex, type);
  10799. if (type === "double") {
  10800. ret = HEAPF64[argIndex >> 3];
  10801. argIndex += 8;
  10802. } else if (type == "i64") {
  10803. ret = [ HEAP32[argIndex >> 2], HEAP32[argIndex + 4 >> 2] ];
  10804. argIndex += 8;
  10805. } else {
  10806. assert((argIndex & 3) === 0);
  10807. type = "i32";
  10808. ret = HEAP32[argIndex >> 2];
  10809. argIndex += 4;
  10810. }
  10811. return ret;
  10812. }
  10813. var ret = [];
  10814. var curr, next, currArg;
  10815. while (1) {
  10816. var startTextIndex = textIndex;
  10817. curr = HEAP8[textIndex >> 0];
  10818. if (curr === 0) break;
  10819. next = HEAP8[textIndex + 1 >> 0];
  10820. if (curr == 37) {
  10821. var flagAlwaysSigned = false;
  10822. var flagLeftAlign = false;
  10823. var flagAlternative = false;
  10824. var flagZeroPad = false;
  10825. var flagPadSign = false;
  10826. flagsLoop : while (1) {
  10827. switch (next) {
  10828. case 43:
  10829. flagAlwaysSigned = true;
  10830. break;
  10831. case 45:
  10832. flagLeftAlign = true;
  10833. break;
  10834. case 35:
  10835. flagAlternative = true;
  10836. break;
  10837. case 48:
  10838. if (flagZeroPad) {
  10839. break flagsLoop;
  10840. } else {
  10841. flagZeroPad = true;
  10842. break;
  10843. }
  10844. case 32:
  10845. flagPadSign = true;
  10846. break;
  10847. default:
  10848. break flagsLoop;
  10849. }
  10850. textIndex++;
  10851. next = HEAP8[textIndex + 1 >> 0];
  10852. }
  10853. var width = 0;
  10854. if (next == 42) {
  10855. width = getNextArg("i32");
  10856. textIndex++;
  10857. next = HEAP8[textIndex + 1 >> 0];
  10858. } else {
  10859. while (next >= 48 && next <= 57) {
  10860. width = width * 10 + (next - 48);
  10861. textIndex++;
  10862. next = HEAP8[textIndex + 1 >> 0];
  10863. }
  10864. }
  10865. var precisionSet = false, precision = -1;
  10866. if (next == 46) {
  10867. precision = 0;
  10868. precisionSet = true;
  10869. textIndex++;
  10870. next = HEAP8[textIndex + 1 >> 0];
  10871. if (next == 42) {
  10872. precision = getNextArg("i32");
  10873. textIndex++;
  10874. } else {
  10875. while (1) {
  10876. var precisionChr = HEAP8[textIndex + 1 >> 0];
  10877. if (precisionChr < 48 || precisionChr > 57) break;
  10878. precision = precision * 10 + (precisionChr - 48);
  10879. textIndex++;
  10880. }
  10881. }
  10882. next = HEAP8[textIndex + 1 >> 0];
  10883. }
  10884. if (precision < 0) {
  10885. precision = 6;
  10886. precisionSet = false;
  10887. }
  10888. var argSize;
  10889. switch (String.fromCharCode(next)) {
  10890. case "h":
  10891. var nextNext = HEAP8[textIndex + 2 >> 0];
  10892. if (nextNext == 104) {
  10893. textIndex++;
  10894. argSize = 1;
  10895. } else {
  10896. argSize = 2;
  10897. }
  10898. break;
  10899. case "l":
  10900. var nextNext = HEAP8[textIndex + 2 >> 0];
  10901. if (nextNext == 108) {
  10902. textIndex++;
  10903. argSize = 8;
  10904. } else {
  10905. argSize = 4;
  10906. }
  10907. break;
  10908. case "L":
  10909. case "q":
  10910. case "j":
  10911. argSize = 8;
  10912. break;
  10913. case "z":
  10914. case "t":
  10915. case "I":
  10916. argSize = 4;
  10917. break;
  10918. default:
  10919. argSize = null;
  10920. }
  10921. if (argSize) textIndex++;
  10922. next = HEAP8[textIndex + 1 >> 0];
  10923. switch (String.fromCharCode(next)) {
  10924. case "d":
  10925. case "i":
  10926. case "u":
  10927. case "o":
  10928. case "x":
  10929. case "X":
  10930. case "p":
  10931. {
  10932. var signed = next == 100 || next == 105;
  10933. argSize = argSize || 4;
  10934. currArg = getNextArg("i" + argSize * 8);
  10935. var origArg = currArg;
  10936. var argText;
  10937. if (argSize == 8) {
  10938. currArg = makeBigInt(currArg[0], currArg[1], next == 117);
  10939. }
  10940. if (argSize <= 4) {
  10941. var limit = Math.pow(256, argSize) - 1;
  10942. currArg = (signed ? reSign : unSign)(currArg & limit, argSize * 8);
  10943. }
  10944. var currAbsArg = Math.abs(currArg);
  10945. var prefix = "";
  10946. if (next == 100 || next == 105) {
  10947. if (argSize == 8 && typeof i64Math === "object") argText = i64Math.stringify(origArg[0], origArg[1], null); else argText = reSign(currArg, 8 * argSize, 1).toString(10);
  10948. } else if (next == 117) {
  10949. if (argSize == 8 && typeof i64Math === "object") argText = i64Math.stringify(origArg[0], origArg[1], true); else argText = unSign(currArg, 8 * argSize, 1).toString(10);
  10950. currArg = Math.abs(currArg);
  10951. } else if (next == 111) {
  10952. argText = (flagAlternative ? "0" : "") + currAbsArg.toString(8);
  10953. } else if (next == 120 || next == 88) {
  10954. prefix = flagAlternative && currArg != 0 ? "0x" : "";
  10955. if (argSize == 8 && typeof i64Math === "object") {
  10956. if (origArg[1]) {
  10957. argText = (origArg[1] >>> 0).toString(16);
  10958. var lower = (origArg[0] >>> 0).toString(16);
  10959. while (lower.length < 8) lower = "0" + lower;
  10960. argText += lower;
  10961. } else {
  10962. argText = (origArg[0] >>> 0).toString(16);
  10963. }
  10964. } else if (currArg < 0) {
  10965. currArg = -currArg;
  10966. argText = (currAbsArg - 1).toString(16);
  10967. var buffer = [];
  10968. for (var i = 0; i < argText.length; i++) {
  10969. buffer.push((15 - parseInt(argText[i], 16)).toString(16));
  10970. }
  10971. argText = buffer.join("");
  10972. while (argText.length < argSize * 2) argText = "f" + argText;
  10973. } else {
  10974. argText = currAbsArg.toString(16);
  10975. }
  10976. if (next == 88) {
  10977. prefix = prefix.toUpperCase();
  10978. argText = argText.toUpperCase();
  10979. }
  10980. } else if (next == 112) {
  10981. if (currAbsArg === 0) {
  10982. argText = "(nil)";
  10983. } else {
  10984. prefix = "0x";
  10985. argText = currAbsArg.toString(16);
  10986. }
  10987. }
  10988. if (precisionSet) {
  10989. while (argText.length < precision) {
  10990. argText = "0" + argText;
  10991. }
  10992. }
  10993. if (currArg >= 0) {
  10994. if (flagAlwaysSigned) {
  10995. prefix = "+" + prefix;
  10996. } else if (flagPadSign) {
  10997. prefix = " " + prefix;
  10998. }
  10999. }
  11000. if (argText.charAt(0) == "-") {
  11001. prefix = "-" + prefix;
  11002. argText = argText.substr(1);
  11003. }
  11004. while (prefix.length + argText.length < width) {
  11005. if (flagLeftAlign) {
  11006. argText += " ";
  11007. } else {
  11008. if (flagZeroPad) {
  11009. argText = "0" + argText;
  11010. } else {
  11011. prefix = " " + prefix;
  11012. }
  11013. }
  11014. }
  11015. argText = prefix + argText;
  11016. argText.split("").forEach((function(chr) {
  11017. ret.push(chr.charCodeAt(0));
  11018. }));
  11019. break;
  11020. }
  11021. case "f":
  11022. case "F":
  11023. case "e":
  11024. case "E":
  11025. case "g":
  11026. case "G":
  11027. {
  11028. currArg = getNextArg("double");
  11029. var argText;
  11030. if (isNaN(currArg)) {
  11031. argText = "nan";
  11032. flagZeroPad = false;
  11033. } else if (!isFinite(currArg)) {
  11034. argText = (currArg < 0 ? "-" : "") + "inf";
  11035. flagZeroPad = false;
  11036. } else {
  11037. var isGeneral = false;
  11038. var effectivePrecision = Math.min(precision, 20);
  11039. if (next == 103 || next == 71) {
  11040. isGeneral = true;
  11041. precision = precision || 1;
  11042. var exponent = parseInt(currArg.toExponential(effectivePrecision).split("e")[1], 10);
  11043. if (precision > exponent && exponent >= -4) {
  11044. next = (next == 103 ? "f" : "F").charCodeAt(0);
  11045. precision -= exponent + 1;
  11046. } else {
  11047. next = (next == 103 ? "e" : "E").charCodeAt(0);
  11048. precision--;
  11049. }
  11050. effectivePrecision = Math.min(precision, 20);
  11051. }
  11052. if (next == 101 || next == 69) {
  11053. argText = currArg.toExponential(effectivePrecision);
  11054. if (/[eE][-+]\d$/.test(argText)) {
  11055. argText = argText.slice(0, -1) + "0" + argText.slice(-1);
  11056. }
  11057. } else if (next == 102 || next == 70) {
  11058. argText = currArg.toFixed(effectivePrecision);
  11059. if (currArg === 0 && __reallyNegative(currArg)) {
  11060. argText = "-" + argText;
  11061. }
  11062. }
  11063. var parts = argText.split("e");
  11064. if (isGeneral && !flagAlternative) {
  11065. while (parts[0].length > 1 && parts[0].indexOf(".") != -1 && (parts[0].slice(-1) == "0" || parts[0].slice(-1) == ".")) {
  11066. parts[0] = parts[0].slice(0, -1);
  11067. }
  11068. } else {
  11069. if (flagAlternative && argText.indexOf(".") == -1) parts[0] += ".";
  11070. while (precision > effectivePrecision++) parts[0] += "0";
  11071. }
  11072. argText = parts[0] + (parts.length > 1 ? "e" + parts[1] : "");
  11073. if (next == 69) argText = argText.toUpperCase();
  11074. if (currArg >= 0) {
  11075. if (flagAlwaysSigned) {
  11076. argText = "+" + argText;
  11077. } else if (flagPadSign) {
  11078. argText = " " + argText;
  11079. }
  11080. }
  11081. }
  11082. while (argText.length < width) {
  11083. if (flagLeftAlign) {
  11084. argText += " ";
  11085. } else {
  11086. if (flagZeroPad && (argText[0] == "-" || argText[0] == "+")) {
  11087. argText = argText[0] + "0" + argText.slice(1);
  11088. } else {
  11089. argText = (flagZeroPad ? "0" : " ") + argText;
  11090. }
  11091. }
  11092. }
  11093. if (next < 97) argText = argText.toUpperCase();
  11094. argText.split("").forEach((function(chr) {
  11095. ret.push(chr.charCodeAt(0));
  11096. }));
  11097. break;
  11098. }
  11099. case "s":
  11100. {
  11101. var arg = getNextArg("i8*");
  11102. var argLength = arg ? _strlen(arg) : "(null)".length;
  11103. if (precisionSet) argLength = Math.min(argLength, precision);
  11104. if (!flagLeftAlign) {
  11105. while (argLength < width--) {
  11106. ret.push(32);
  11107. }
  11108. }
  11109. if (arg) {
  11110. for (var i = 0; i < argLength; i++) {
  11111. ret.push(HEAPU8[arg++ >> 0]);
  11112. }
  11113. } else {
  11114. ret = ret.concat(intArrayFromString("(null)".substr(0, argLength), true));
  11115. }
  11116. if (flagLeftAlign) {
  11117. while (argLength < width--) {
  11118. ret.push(32);
  11119. }
  11120. }
  11121. break;
  11122. }
  11123. case "c":
  11124. {
  11125. if (flagLeftAlign) ret.push(getNextArg("i8"));
  11126. while (--width > 0) {
  11127. ret.push(32);
  11128. }
  11129. if (!flagLeftAlign) ret.push(getNextArg("i8"));
  11130. break;
  11131. }
  11132. case "n":
  11133. {
  11134. var ptr = getNextArg("i32*");
  11135. HEAP32[ptr >> 2] = ret.length;
  11136. break;
  11137. }
  11138. case "%":
  11139. {
  11140. ret.push(curr);
  11141. break;
  11142. }
  11143. default:
  11144. {
  11145. for (var i = startTextIndex; i < textIndex + 2; i++) {
  11146. ret.push(HEAP8[i >> 0]);
  11147. }
  11148. }
  11149. }
  11150. textIndex += 2;
  11151. } else {
  11152. ret.push(curr);
  11153. textIndex += 1;
  11154. }
  11155. }
  11156. return ret;
  11157. }
  11158. function __emscripten_traverse_stack(args) {
  11159. if (!args || !args.callee || !args.callee.name) {
  11160. return [ null, "", "" ];
  11161. }
  11162. var funstr = args.callee.toString();
  11163. var funcname = args.callee.name;
  11164. var str = "(";
  11165. var first = true;
  11166. for (var i in args) {
  11167. var a = args[i];
  11168. if (!first) {
  11169. str += ", ";
  11170. }
  11171. first = false;
  11172. if (typeof a === "number" || typeof a === "string") {
  11173. str += a;
  11174. } else {
  11175. str += "(" + typeof a + ")";
  11176. }
  11177. }
  11178. str += ")";
  11179. var caller = args.callee.caller;
  11180. args = caller ? caller.arguments : [];
  11181. if (first) str = "";
  11182. return [ args, funcname, str ];
  11183. }
  11184. function _emscripten_get_callstack_js(flags) {
  11185. var callstack = jsStackTrace();
  11186. var iThisFunc = callstack.lastIndexOf("_emscripten_log");
  11187. var iThisFunc2 = callstack.lastIndexOf("_emscripten_get_callstack");
  11188. var iNextLine = callstack.indexOf("\n", Math.max(iThisFunc, iThisFunc2)) + 1;
  11189. callstack = callstack.slice(iNextLine);
  11190. if (flags & 8 && typeof emscripten_source_map === "undefined") {
  11191. 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.');
  11192. flags ^= 8;
  11193. flags |= 16;
  11194. }
  11195. var stack_args = null;
  11196. if (flags & 128) {
  11197. stack_args = __emscripten_traverse_stack(arguments);
  11198. while (stack_args[1].indexOf("_emscripten_") >= 0) stack_args = __emscripten_traverse_stack(stack_args[0]);
  11199. }
  11200. var lines = callstack.split("\n");
  11201. callstack = "";
  11202. var newFirefoxRe = new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)");
  11203. var firefoxRe = new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?");
  11204. var chromeRe = new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");
  11205. for (var l in lines) {
  11206. var line = lines[l];
  11207. var jsSymbolName = "";
  11208. var file = "";
  11209. var lineno = 0;
  11210. var column = 0;
  11211. var parts = chromeRe.exec(line);
  11212. if (parts && parts.length == 5) {
  11213. jsSymbolName = parts[1];
  11214. file = parts[2];
  11215. lineno = parts[3];
  11216. column = parts[4];
  11217. } else {
  11218. parts = newFirefoxRe.exec(line);
  11219. if (!parts) parts = firefoxRe.exec(line);
  11220. if (parts && parts.length >= 4) {
  11221. jsSymbolName = parts[1];
  11222. file = parts[2];
  11223. lineno = parts[3];
  11224. column = parts[4] | 0;
  11225. } else {
  11226. callstack += line + "\n";
  11227. continue;
  11228. }
  11229. }
  11230. var cSymbolName = flags & 32 ? demangle(jsSymbolName) : jsSymbolName;
  11231. if (!cSymbolName) {
  11232. cSymbolName = jsSymbolName;
  11233. }
  11234. var haveSourceMap = false;
  11235. if (flags & 8) {
  11236. var orig = emscripten_source_map.originalPositionFor({
  11237. line: lineno,
  11238. column: column
  11239. });
  11240. haveSourceMap = orig && orig.source;
  11241. if (haveSourceMap) {
  11242. if (flags & 64) {
  11243. orig.source = orig.source.substring(orig.source.replace(/\\/g, "/").lastIndexOf("/") + 1);
  11244. }
  11245. callstack += " at " + cSymbolName + " (" + orig.source + ":" + orig.line + ":" + orig.column + ")\n";
  11246. }
  11247. }
  11248. if (flags & 16 || !haveSourceMap) {
  11249. if (flags & 64) {
  11250. file = file.substring(file.replace(/\\/g, "/").lastIndexOf("/") + 1);
  11251. }
  11252. callstack += (haveSourceMap ? " = " + jsSymbolName : " at " + cSymbolName) + " (" + file + ":" + lineno + ":" + column + ")\n";
  11253. }
  11254. if (flags & 128 && stack_args[0]) {
  11255. if (stack_args[1] == jsSymbolName && stack_args[2].length > 0) {
  11256. callstack = callstack.replace(/\s+$/, "");
  11257. callstack += " with values: " + stack_args[1] + stack_args[2] + "\n";
  11258. }
  11259. stack_args = __emscripten_traverse_stack(stack_args[0]);
  11260. }
  11261. }
  11262. callstack = callstack.replace(/\s+$/, "");
  11263. return callstack;
  11264. }
  11265. function _emscripten_log_js(flags, str) {
  11266. if (flags & 24) {
  11267. str = str.replace(/\s+$/, "");
  11268. str += (str.length > 0 ? "\n" : "") + _emscripten_get_callstack_js(flags);
  11269. }
  11270. if (flags & 1) {
  11271. if (flags & 4) {
  11272. console.error(str);
  11273. } else if (flags & 2) {
  11274. console.warn(str);
  11275. } else {
  11276. console.log(str);
  11277. }
  11278. } else if (flags & 6) {
  11279. err(str);
  11280. } else {
  11281. out(str);
  11282. }
  11283. }
  11284. function _emscripten_log(flags, varargs) {
  11285. var format = HEAP32[varargs >> 2];
  11286. varargs += 4;
  11287. var str = "";
  11288. if (format) {
  11289. var result = __formatString(format, varargs);
  11290. for (var i = 0; i < result.length; ++i) {
  11291. str += String.fromCharCode(result[i]);
  11292. }
  11293. }
  11294. _emscripten_log_js(flags, str);
  11295. }
  11296. function _emscripten_num_logical_cores() {
  11297. return 1;
  11298. }
  11299. function __setLetterbox(element, topBottom, leftRight) {
  11300. if (JSEvents.isInternetExplorer()) {
  11301. element.style.marginLeft = element.style.marginRight = leftRight + "px";
  11302. element.style.marginTop = element.style.marginBottom = topBottom + "px";
  11303. } else {
  11304. element.style.paddingLeft = element.style.paddingRight = leftRight + "px";
  11305. element.style.paddingTop = element.style.paddingBottom = topBottom + "px";
  11306. }
  11307. }
  11308. function __emscripten_do_request_fullscreen(target, strategy) {
  11309. if (typeof JSEvents.fullscreenEnabled() === "undefined") return -1;
  11310. if (!JSEvents.fullscreenEnabled()) return -3;
  11311. if (!target) target = "#canvas";
  11312. target = JSEvents.findEventTarget(target);
  11313. if (!target) return -4;
  11314. if (!target.requestFullscreen && !target.msRequestFullscreen && !target.mozRequestFullScreen && !target.mozRequestFullscreen && !target.webkitRequestFullscreen) {
  11315. return -3;
  11316. }
  11317. var canPerformRequests = JSEvents.canPerformEventHandlerRequests();
  11318. if (!canPerformRequests) {
  11319. if (strategy.deferUntilInEventHandler) {
  11320. JSEvents.deferCall(JSEvents.requestFullscreen, 1, [ target, strategy ]);
  11321. return 1;
  11322. } else {
  11323. return -2;
  11324. }
  11325. }
  11326. return JSEvents.requestFullscreen(target, strategy);
  11327. }
  11328. function _emscripten_request_fullscreen(target, deferUntilInEventHandler) {
  11329. var strategy = {};
  11330. strategy.scaleMode = 0;
  11331. strategy.canvasResolutionScaleMode = 0;
  11332. strategy.filteringMode = 0;
  11333. strategy.deferUntilInEventHandler = deferUntilInEventHandler;
  11334. strategy.canvasResizedCallbackTargetThread = 2;
  11335. return __emscripten_do_request_fullscreen(target, strategy);
  11336. }
  11337. function _emscripten_request_pointerlock(target, deferUntilInEventHandler) {
  11338. if (!target) target = "#canvas";
  11339. target = JSEvents.findEventTarget(target);
  11340. if (!target) return -4;
  11341. if (!target.requestPointerLock && !target.mozRequestPointerLock && !target.webkitRequestPointerLock && !target.msRequestPointerLock) {
  11342. return -1;
  11343. }
  11344. var canPerformRequests = JSEvents.canPerformEventHandlerRequests();
  11345. if (!canPerformRequests) {
  11346. if (deferUntilInEventHandler) {
  11347. JSEvents.deferCall(JSEvents.requestPointerLock, 2, [ target ]);
  11348. return 1;
  11349. } else {
  11350. return -2;
  11351. }
  11352. }
  11353. return JSEvents.requestPointerLock(target);
  11354. }
  11355. function _emscripten_set_blur_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11356. JSEvents.registerFocusEventCallback(target, userData, useCapture, callbackfunc, 12, "blur", targetThread);
  11357. return 0;
  11358. }
  11359. function _emscripten_set_dblclick_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11360. JSEvents.registerMouseEventCallback(target, userData, useCapture, callbackfunc, 7, "dblclick", targetThread);
  11361. return 0;
  11362. }
  11363. function _emscripten_set_devicemotion_callback_on_thread(userData, useCapture, callbackfunc, targetThread) {
  11364. JSEvents.registerDeviceMotionEventCallback(window, userData, useCapture, callbackfunc, 17, "devicemotion", targetThread);
  11365. return 0;
  11366. }
  11367. function _emscripten_set_deviceorientation_callback_on_thread(userData, useCapture, callbackfunc, targetThread) {
  11368. JSEvents.registerDeviceOrientationEventCallback(window, userData, useCapture, callbackfunc, 16, "deviceorientation", targetThread);
  11369. return 0;
  11370. }
  11371. function _emscripten_set_focus_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11372. JSEvents.registerFocusEventCallback(target, userData, useCapture, callbackfunc, 13, "focus", targetThread);
  11373. return 0;
  11374. }
  11375. function _emscripten_set_fullscreenchange_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11376. if (typeof JSEvents.fullscreenEnabled() === "undefined") return -1;
  11377. if (!target) target = document; else {
  11378. target = JSEvents.findEventTarget(target);
  11379. if (!target) return -4;
  11380. }
  11381. JSEvents.registerFullscreenChangeEventCallback(target, userData, useCapture, callbackfunc, 19, "fullscreenchange", targetThread);
  11382. JSEvents.registerFullscreenChangeEventCallback(target, userData, useCapture, callbackfunc, 19, "mozfullscreenchange", targetThread);
  11383. JSEvents.registerFullscreenChangeEventCallback(target, userData, useCapture, callbackfunc, 19, "webkitfullscreenchange", targetThread);
  11384. JSEvents.registerFullscreenChangeEventCallback(target, userData, useCapture, callbackfunc, 19, "msfullscreenchange", targetThread);
  11385. return 0;
  11386. }
  11387. function _emscripten_set_gamepadconnected_callback_on_thread(userData, useCapture, callbackfunc, targetThread) {
  11388. if (!navigator.getGamepads && !navigator.webkitGetGamepads) return -1;
  11389. JSEvents.registerGamepadEventCallback(window, userData, useCapture, callbackfunc, 26, "gamepadconnected", targetThread);
  11390. return 0;
  11391. }
  11392. function _emscripten_set_gamepaddisconnected_callback_on_thread(userData, useCapture, callbackfunc, targetThread) {
  11393. if (!navigator.getGamepads && !navigator.webkitGetGamepads) return -1;
  11394. JSEvents.registerGamepadEventCallback(window, userData, useCapture, callbackfunc, 27, "gamepaddisconnected", targetThread);
  11395. return 0;
  11396. }
  11397. function _emscripten_set_keydown_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11398. JSEvents.registerKeyEventCallback(target, userData, useCapture, callbackfunc, 2, "keydown", targetThread);
  11399. return 0;
  11400. }
  11401. function _emscripten_set_keypress_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11402. JSEvents.registerKeyEventCallback(target, userData, useCapture, callbackfunc, 1, "keypress", targetThread);
  11403. return 0;
  11404. }
  11405. function _emscripten_set_keyup_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11406. JSEvents.registerKeyEventCallback(target, userData, useCapture, callbackfunc, 3, "keyup", targetThread);
  11407. return 0;
  11408. }
  11409. function _emscripten_set_mousedown_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11410. JSEvents.registerMouseEventCallback(target, userData, useCapture, callbackfunc, 5, "mousedown", targetThread);
  11411. return 0;
  11412. }
  11413. function _emscripten_set_mousemove_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11414. JSEvents.registerMouseEventCallback(target, userData, useCapture, callbackfunc, 8, "mousemove", targetThread);
  11415. return 0;
  11416. }
  11417. function _emscripten_set_mouseup_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11418. JSEvents.registerMouseEventCallback(target, userData, useCapture, callbackfunc, 6, "mouseup", targetThread);
  11419. return 0;
  11420. }
  11421. function _emscripten_set_touchcancel_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11422. JSEvents.registerTouchEventCallback(target, userData, useCapture, callbackfunc, 25, "touchcancel", targetThread);
  11423. return 0;
  11424. }
  11425. function _emscripten_set_touchend_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11426. JSEvents.registerTouchEventCallback(target, userData, useCapture, callbackfunc, 23, "touchend", targetThread);
  11427. return 0;
  11428. }
  11429. function _emscripten_set_touchmove_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11430. JSEvents.registerTouchEventCallback(target, userData, useCapture, callbackfunc, 24, "touchmove", targetThread);
  11431. return 0;
  11432. }
  11433. function _emscripten_set_touchstart_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11434. JSEvents.registerTouchEventCallback(target, userData, useCapture, callbackfunc, 22, "touchstart", targetThread);
  11435. return 0;
  11436. }
  11437. function _emscripten_set_wheel_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11438. target = JSEvents.findEventTarget(target);
  11439. if (typeof target.onwheel !== "undefined") {
  11440. JSEvents.registerWheelEventCallback(target, userData, useCapture, callbackfunc, 9, "wheel", targetThread);
  11441. return 0;
  11442. } else if (typeof target.onmousewheel !== "undefined") {
  11443. JSEvents.registerWheelEventCallback(target, userData, useCapture, callbackfunc, 9, "mousewheel", targetThread);
  11444. return 0;
  11445. } else {
  11446. return -1;
  11447. }
  11448. }
  11449. var GL = {
  11450. counter: 1,
  11451. lastError: 0,
  11452. buffers: [],
  11453. mappedBuffers: {},
  11454. programs: [],
  11455. framebuffers: [],
  11456. renderbuffers: [],
  11457. textures: [],
  11458. uniforms: [],
  11459. shaders: [],
  11460. vaos: [],
  11461. contexts: [],
  11462. currentContext: null,
  11463. offscreenCanvases: {},
  11464. timerQueriesEXT: [],
  11465. queries: [],
  11466. samplers: [],
  11467. transformFeedbacks: [],
  11468. syncs: [],
  11469. byteSizeByTypeRoot: 5120,
  11470. byteSizeByType: [ 1, 1, 2, 2, 4, 4, 4, 2, 3, 4, 8 ],
  11471. programInfos: {},
  11472. stringCache: {},
  11473. stringiCache: {},
  11474. tempFixedLengthArray: [],
  11475. packAlignment: 4,
  11476. unpackAlignment: 4,
  11477. init: (function() {
  11478. GL.miniTempBuffer = new Float32Array(GL.MINI_TEMP_BUFFER_SIZE);
  11479. for (var i = 0; i < GL.MINI_TEMP_BUFFER_SIZE; i++) {
  11480. GL.miniTempBufferViews[i] = GL.miniTempBuffer.subarray(0, i + 1);
  11481. }
  11482. for (var i = 0; i < 32; i++) {
  11483. GL.tempFixedLengthArray.push(new Array(i));
  11484. }
  11485. }),
  11486. recordError: function recordError(errorCode) {
  11487. if (!GL.lastError) {
  11488. GL.lastError = errorCode;
  11489. }
  11490. },
  11491. getNewId: (function(table) {
  11492. var ret = GL.counter++;
  11493. for (var i = table.length; i < ret; i++) {
  11494. table[i] = null;
  11495. }
  11496. return ret;
  11497. }),
  11498. MINI_TEMP_BUFFER_SIZE: 256,
  11499. miniTempBuffer: null,
  11500. miniTempBufferViews: [ 0 ],
  11501. getSource: (function(shader, count, string, length) {
  11502. var source = "";
  11503. for (var i = 0; i < count; ++i) {
  11504. var frag;
  11505. if (length) {
  11506. var len = HEAP32[length + i * 4 >> 2];
  11507. if (len < 0) {
  11508. frag = Pointer_stringify(HEAP32[string + i * 4 >> 2]);
  11509. } else {
  11510. frag = Pointer_stringify(HEAP32[string + i * 4 >> 2], len);
  11511. }
  11512. } else {
  11513. frag = Pointer_stringify(HEAP32[string + i * 4 >> 2]);
  11514. }
  11515. source += frag;
  11516. }
  11517. return source;
  11518. }),
  11519. createContext: (function(canvas, webGLContextAttributes) {
  11520. if (typeof webGLContextAttributes["majorVersion"] === "undefined" && typeof webGLContextAttributes["minorVersion"] === "undefined") {
  11521. if (typeof WebGL2RenderingContext !== "undefined") webGLContextAttributes["majorVersion"] = 2; else webGLContextAttributes["majorVersion"] = 1;
  11522. webGLContextAttributes["minorVersion"] = 0;
  11523. }
  11524. var ctx;
  11525. var errorInfo = "?";
  11526. function onContextCreationError(event) {
  11527. errorInfo = event.statusMessage || errorInfo;
  11528. }
  11529. webGLContextAttributes["powerPreference"] = "high-performance";
  11530. try {
  11531. canvas.addEventListener("webglcontextcreationerror", onContextCreationError, false);
  11532. try {
  11533. if (webGLContextAttributes["majorVersion"] == 1 && webGLContextAttributes["minorVersion"] == 0) {
  11534. ctx = canvas.getContext("webgl", webGLContextAttributes) || canvas.getContext("experimental-webgl", webGLContextAttributes);
  11535. } else if (webGLContextAttributes["majorVersion"] == 2 && webGLContextAttributes["minorVersion"] == 0) {
  11536. ctx = canvas.getContext("webgl2", webGLContextAttributes);
  11537. } else {
  11538. throw "Unsupported WebGL context version " + majorVersion + "." + minorVersion + "!";
  11539. }
  11540. } finally {
  11541. canvas.removeEventListener("webglcontextcreationerror", onContextCreationError, false);
  11542. }
  11543. if (!ctx) throw ":(";
  11544. } catch (e) {
  11545. out("Could not create canvas: " + [ errorInfo, e, JSON.stringify(webGLContextAttributes) ]);
  11546. return 0;
  11547. }
  11548. if (!ctx) return 0;
  11549. var context = GL.registerContext(ctx, webGLContextAttributes);
  11550. return context;
  11551. }),
  11552. registerContext: (function(ctx, webGLContextAttributes) {
  11553. var handle = _malloc(8);
  11554. HEAP32[handle >> 2] = webGLContextAttributes["explicitSwapControl"];
  11555. var context = {
  11556. handle: handle,
  11557. attributes: webGLContextAttributes,
  11558. version: webGLContextAttributes["majorVersion"],
  11559. GLctx: ctx
  11560. };
  11561. function getChromeVersion() {
  11562. var raw = navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);
  11563. return raw ? parseInt(raw[2], 10) : false;
  11564. }
  11565. context.supportsWebGL2EntryPoints = context.version >= 2 && (getChromeVersion() === false || getChromeVersion() >= 58);
  11566. if (ctx.canvas) ctx.canvas.GLctxObject = context;
  11567. GL.contexts[handle] = context;
  11568. if (typeof webGLContextAttributes["enableExtensionsByDefault"] === "undefined" || webGLContextAttributes["enableExtensionsByDefault"]) {
  11569. GL.initExtensions(context);
  11570. }
  11571. if (webGLContextAttributes["renderViaOffscreenBackBuffer"]) {
  11572. return 0;
  11573. }
  11574. return handle;
  11575. }),
  11576. makeContextCurrent: (function(contextHandle) {
  11577. if (!contextHandle) {
  11578. GLctx = Module.ctx = GL.currentContext = null;
  11579. return true;
  11580. }
  11581. var context = GL.contexts[contextHandle];
  11582. if (!context) {
  11583. return false;
  11584. }
  11585. GLctx = Module.ctx = context.GLctx;
  11586. GL.currentContext = context;
  11587. return true;
  11588. }),
  11589. getContext: (function(contextHandle) {
  11590. return GL.contexts[contextHandle];
  11591. }),
  11592. deleteContext: (function(contextHandle) {
  11593. if (!contextHandle) return;
  11594. if (GL.currentContext === GL.contexts[contextHandle]) GL.currentContext = null;
  11595. if (typeof JSEvents === "object") JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);
  11596. if (GL.contexts[contextHandle] && GL.contexts[contextHandle].GLctx.canvas) GL.contexts[contextHandle].GLctx.canvas.GLctxObject = undefined;
  11597. _free(GL.contexts[contextHandle]);
  11598. GL.contexts[contextHandle] = null;
  11599. }),
  11600. initExtensions: (function(context) {
  11601. if (!context) context = GL.currentContext;
  11602. if (context.initExtensionsDone) return;
  11603. context.initExtensionsDone = true;
  11604. var GLctx = context.GLctx;
  11605. context.maxVertexAttribs = GLctx.getParameter(GLctx.MAX_VERTEX_ATTRIBS);
  11606. if (context.version < 2) {
  11607. var instancedArraysExt = GLctx.getExtension("ANGLE_instanced_arrays");
  11608. if (instancedArraysExt) {
  11609. GLctx["vertexAttribDivisor"] = (function(index, divisor) {
  11610. instancedArraysExt["vertexAttribDivisorANGLE"](index, divisor);
  11611. });
  11612. GLctx["drawArraysInstanced"] = (function(mode, first, count, primcount) {
  11613. instancedArraysExt["drawArraysInstancedANGLE"](mode, first, count, primcount);
  11614. });
  11615. GLctx["drawElementsInstanced"] = (function(mode, count, type, indices, primcount) {
  11616. instancedArraysExt["drawElementsInstancedANGLE"](mode, count, type, indices, primcount);
  11617. });
  11618. }
  11619. var vaoExt = GLctx.getExtension("OES_vertex_array_object");
  11620. if (vaoExt) {
  11621. GLctx["createVertexArray"] = (function() {
  11622. return vaoExt["createVertexArrayOES"]();
  11623. });
  11624. GLctx["deleteVertexArray"] = (function(vao) {
  11625. vaoExt["deleteVertexArrayOES"](vao);
  11626. });
  11627. GLctx["bindVertexArray"] = (function(vao) {
  11628. vaoExt["bindVertexArrayOES"](vao);
  11629. });
  11630. GLctx["isVertexArray"] = (function(vao) {
  11631. return vaoExt["isVertexArrayOES"](vao);
  11632. });
  11633. }
  11634. var drawBuffersExt = GLctx.getExtension("WEBGL_draw_buffers");
  11635. if (drawBuffersExt) {
  11636. GLctx["drawBuffers"] = (function(n, bufs) {
  11637. drawBuffersExt["drawBuffersWEBGL"](n, bufs);
  11638. });
  11639. }
  11640. }
  11641. GLctx.disjointTimerQueryExt = GLctx.getExtension("EXT_disjoint_timer_query");
  11642. 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", "EXT_texture_norm16", "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", "WEBKIT_WEBGL_compressed_texture_pvrtc" ];
  11643. var exts = GLctx.getSupportedExtensions();
  11644. if (exts && exts.length > 0) {
  11645. GLctx.getSupportedExtensions().forEach((function(ext) {
  11646. if (automaticallyEnabledExtensions.indexOf(ext) != -1) {
  11647. GLctx.getExtension(ext);
  11648. }
  11649. }));
  11650. }
  11651. }),
  11652. populateUniformTable: (function(program) {
  11653. var p = GL.programs[program];
  11654. GL.programInfos[program] = {
  11655. uniforms: {},
  11656. maxUniformLength: 0,
  11657. maxAttributeLength: -1,
  11658. maxUniformBlockNameLength: -1
  11659. };
  11660. var ptable = GL.programInfos[program];
  11661. var utable = ptable.uniforms;
  11662. var numUniforms = GLctx.getProgramParameter(p, GLctx.ACTIVE_UNIFORMS);
  11663. for (var i = 0; i < numUniforms; ++i) {
  11664. var u = GLctx.getActiveUniform(p, i);
  11665. var name = u.name;
  11666. ptable.maxUniformLength = Math.max(ptable.maxUniformLength, name.length + 1);
  11667. if (name.indexOf("]", name.length - 1) !== -1) {
  11668. var ls = name.lastIndexOf("[");
  11669. name = name.slice(0, ls);
  11670. }
  11671. var loc = GLctx.getUniformLocation(p, name);
  11672. if (loc != null) {
  11673. var id = GL.getNewId(GL.uniforms);
  11674. utable[name] = [ u.size, id ];
  11675. GL.uniforms[id] = loc;
  11676. for (var j = 1; j < u.size; ++j) {
  11677. var n = name + "[" + j + "]";
  11678. loc = GLctx.getUniformLocation(p, n);
  11679. id = GL.getNewId(GL.uniforms);
  11680. GL.uniforms[id] = loc;
  11681. }
  11682. }
  11683. }
  11684. })
  11685. };
  11686. function _emscripten_webgl_do_create_context(target, attributes) {
  11687. var contextAttributes = {};
  11688. contextAttributes["alpha"] = !!HEAP32[attributes >> 2];
  11689. contextAttributes["depth"] = !!HEAP32[attributes + 4 >> 2];
  11690. contextAttributes["stencil"] = !!HEAP32[attributes + 8 >> 2];
  11691. contextAttributes["antialias"] = !!HEAP32[attributes + 12 >> 2];
  11692. contextAttributes["premultipliedAlpha"] = !!HEAP32[attributes + 16 >> 2];
  11693. contextAttributes["preserveDrawingBuffer"] = !!HEAP32[attributes + 20 >> 2];
  11694. contextAttributes["preferLowPowerToHighPerformance"] = !!HEAP32[attributes + 24 >> 2];
  11695. contextAttributes["failIfMajorPerformanceCaveat"] = !!HEAP32[attributes + 28 >> 2];
  11696. contextAttributes["majorVersion"] = HEAP32[attributes + 32 >> 2];
  11697. contextAttributes["minorVersion"] = HEAP32[attributes + 36 >> 2];
  11698. contextAttributes["explicitSwapControl"] = HEAP32[attributes + 44 >> 2];
  11699. contextAttributes["proxyContextToMainThread"] = HEAP32[attributes + 48 >> 2];
  11700. contextAttributes["renderViaOffscreenBackBuffer"] = HEAP32[attributes + 52 >> 2];
  11701. target = Pointer_stringify(target);
  11702. var canvas;
  11703. if ((!target || target === "#canvas") && Module["canvas"]) {
  11704. canvas = Module["canvas"].id && GL.offscreenCanvases[Module["canvas"].id] ? GL.offscreenCanvases[Module["canvas"].id].offscreenCanvas || JSEvents.findEventTarget(Module["canvas"].id) : Module["canvas"];
  11705. } else {
  11706. canvas = GL.offscreenCanvases[target] ? GL.offscreenCanvases[target].offscreenCanvas : JSEvents.findEventTarget(target);
  11707. }
  11708. if (!canvas) {
  11709. return 0;
  11710. }
  11711. if (contextAttributes["explicitSwapControl"]) {
  11712. return 0;
  11713. }
  11714. var contextHandle = GL.createContext(canvas, contextAttributes);
  11715. return contextHandle;
  11716. }
  11717. function _emscripten_webgl_create_context() {
  11718. return _emscripten_webgl_do_create_context.apply(null, arguments);
  11719. }
  11720. function _emscripten_webgl_destroy_context_calling_thread(contextHandle) {
  11721. GL.deleteContext(contextHandle);
  11722. }
  11723. function _emscripten_webgl_destroy_context() {
  11724. return _emscripten_webgl_destroy_context_calling_thread.apply(null, arguments);
  11725. }
  11726. function _emscripten_webgl_enable_extension_calling_thread(contextHandle, extension) {
  11727. var context = GL.getContext(contextHandle);
  11728. var extString = Pointer_stringify(extension);
  11729. if (extString.indexOf("GL_") == 0) extString = extString.substr(3);
  11730. var ext = context.GLctx.getExtension(extString);
  11731. return ext ? 1 : 0;
  11732. }
  11733. function _emscripten_webgl_enable_extension() {
  11734. return _emscripten_webgl_enable_extension_calling_thread.apply(null, arguments);
  11735. }
  11736. function _emscripten_webgl_do_get_current_context() {
  11737. return GL.currentContext ? GL.currentContext.handle : 0;
  11738. }
  11739. function _emscripten_webgl_get_current_context() {
  11740. return _emscripten_webgl_do_get_current_context.apply(null, arguments);
  11741. }
  11742. function _emscripten_webgl_init_context_attributes(attributes) {
  11743. HEAP32[attributes >> 2] = 1;
  11744. HEAP32[attributes + 4 >> 2] = 1;
  11745. HEAP32[attributes + 8 >> 2] = 0;
  11746. HEAP32[attributes + 12 >> 2] = 1;
  11747. HEAP32[attributes + 16 >> 2] = 1;
  11748. HEAP32[attributes + 20 >> 2] = 0;
  11749. HEAP32[attributes + 24 >> 2] = 0;
  11750. HEAP32[attributes + 28 >> 2] = 0;
  11751. HEAP32[attributes + 32 >> 2] = 1;
  11752. HEAP32[attributes + 36 >> 2] = 0;
  11753. HEAP32[attributes + 40 >> 2] = 1;
  11754. HEAP32[attributes + 44 >> 2] = 0;
  11755. HEAP32[attributes + 48 >> 2] = 0;
  11756. HEAP32[attributes + 52 >> 2] = 0;
  11757. }
  11758. function _emscripten_webgl_make_context_current(contextHandle) {
  11759. var success = GL.makeContextCurrent(contextHandle);
  11760. return success ? 0 : -5;
  11761. }
  11762. function __exit(status) {
  11763. exit(status);
  11764. }
  11765. function _exit(status) {
  11766. __exit(status);
  11767. }
  11768. function _flock(fd, operation) {
  11769. return 0;
  11770. }
  11771. function _getenv(name) {
  11772. if (name === 0) return 0;
  11773. name = Pointer_stringify(name);
  11774. if (!ENV.hasOwnProperty(name)) return 0;
  11775. if (_getenv.ret) _free(_getenv.ret);
  11776. _getenv.ret = allocateUTF8(ENV[name]);
  11777. return _getenv.ret;
  11778. }
  11779. function _gethostbyname(name) {
  11780. name = Pointer_stringify(name);
  11781. var ret = _malloc(20);
  11782. var nameBuf = _malloc(name.length + 1);
  11783. stringToUTF8(name, nameBuf, name.length + 1);
  11784. HEAP32[ret >> 2] = nameBuf;
  11785. var aliasesBuf = _malloc(4);
  11786. HEAP32[aliasesBuf >> 2] = 0;
  11787. HEAP32[ret + 4 >> 2] = aliasesBuf;
  11788. var afinet = 2;
  11789. HEAP32[ret + 8 >> 2] = afinet;
  11790. HEAP32[ret + 12 >> 2] = 4;
  11791. var addrListBuf = _malloc(12);
  11792. HEAP32[addrListBuf >> 2] = addrListBuf + 8;
  11793. HEAP32[addrListBuf + 4 >> 2] = 0;
  11794. HEAP32[addrListBuf + 8 >> 2] = __inet_pton4_raw(DNS.lookup_name(name));
  11795. HEAP32[ret + 16 >> 2] = addrListBuf;
  11796. return ret;
  11797. }
  11798. function _gethostbyaddr(addr, addrlen, type) {
  11799. if (type !== 2) {
  11800. ___setErrNo(ERRNO_CODES.EAFNOSUPPORT);
  11801. return null;
  11802. }
  11803. addr = HEAP32[addr >> 2];
  11804. var host = __inet_ntop4_raw(addr);
  11805. var lookup = DNS.lookup_addr(host);
  11806. if (lookup) {
  11807. host = lookup;
  11808. }
  11809. var hostp = allocate(intArrayFromString(host), "i8", ALLOC_STACK);
  11810. return _gethostbyname(hostp);
  11811. }
  11812. function _getpagesize() {
  11813. return PAGE_SIZE;
  11814. }
  11815. function _getpwuid(uid) {
  11816. return 0;
  11817. }
  11818. function _gettimeofday(ptr) {
  11819. var now = Date.now();
  11820. HEAP32[ptr >> 2] = now / 1e3 | 0;
  11821. HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0;
  11822. return 0;
  11823. }
  11824. function _glActiveTexture(x0) {
  11825. GLctx["activeTexture"](x0);
  11826. }
  11827. function _glAttachShader(program, shader) {
  11828. GLctx.attachShader(GL.programs[program], GL.shaders[shader]);
  11829. }
  11830. function _glBeginQuery(target, id) {
  11831. GLctx["beginQuery"](target, id ? GL.queries[id] : null);
  11832. }
  11833. function _glBeginTransformFeedback(x0) {
  11834. GLctx["beginTransformFeedback"](x0);
  11835. }
  11836. function _glBindAttribLocation(program, index, name) {
  11837. name = Pointer_stringify(name);
  11838. GLctx.bindAttribLocation(GL.programs[program], index, name);
  11839. }
  11840. function _glBindBuffer(target, buffer) {
  11841. var bufferObj = buffer ? GL.buffers[buffer] : null;
  11842. if (target == 35051) {
  11843. GLctx.currentPixelPackBufferBinding = buffer;
  11844. } else if (target == 35052) {
  11845. GLctx.currentPixelUnpackBufferBinding = buffer;
  11846. }
  11847. GLctx.bindBuffer(target, bufferObj);
  11848. }
  11849. function _glBindBufferBase(target, index, buffer) {
  11850. var bufferObj = buffer ? GL.buffers[buffer] : null;
  11851. GLctx["bindBufferBase"](target, index, bufferObj);
  11852. }
  11853. function _glBindBufferRange(target, index, buffer, offset, ptrsize) {
  11854. var bufferObj = buffer ? GL.buffers[buffer] : null;
  11855. GLctx["bindBufferRange"](target, index, bufferObj, offset, ptrsize);
  11856. }
  11857. function _glBindFramebuffer(target, framebuffer) {
  11858. GLctx.bindFramebuffer(target, framebuffer ? GL.framebuffers[framebuffer] : null);
  11859. }
  11860. function _glBindRenderbuffer(target, renderbuffer) {
  11861. GLctx.bindRenderbuffer(target, renderbuffer ? GL.renderbuffers[renderbuffer] : null);
  11862. }
  11863. function _glBindSampler(unit, sampler) {
  11864. GLctx["bindSampler"](unit, sampler ? GL.samplers[sampler] : null);
  11865. }
  11866. function _glBindTexture(target, texture) {
  11867. GLctx.bindTexture(target, texture ? GL.textures[texture] : null);
  11868. }
  11869. function _glBindTransformFeedback(target, id) {
  11870. var transformFeedback = id ? GL.transformFeedbacks[id] : null;
  11871. if (id && !transformFeedback) {
  11872. GL.recordError(1282);
  11873. return;
  11874. }
  11875. GLctx["bindTransformFeedback"](target, transformFeedback);
  11876. }
  11877. function _glBindVertexArray(vao) {
  11878. GLctx["bindVertexArray"](GL.vaos[vao]);
  11879. }
  11880. function _glBlendEquation(x0) {
  11881. GLctx["blendEquation"](x0);
  11882. }
  11883. function _glBlendEquationSeparate(x0, x1) {
  11884. GLctx["blendEquationSeparate"](x0, x1);
  11885. }
  11886. function _glBlendFuncSeparate(x0, x1, x2, x3) {
  11887. GLctx["blendFuncSeparate"](x0, x1, x2, x3);
  11888. }
  11889. function _glBlitFramebuffer(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) {
  11890. GLctx["blitFramebuffer"](x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
  11891. }
  11892. function _glBufferData(target, size, data, usage) {
  11893. if (!data) {
  11894. GLctx.bufferData(target, size, usage);
  11895. } else {
  11896. if (GL.currentContext.supportsWebGL2EntryPoints) {
  11897. GLctx.bufferData(target, HEAPU8, usage, data, size);
  11898. return;
  11899. }
  11900. GLctx.bufferData(target, HEAPU8.subarray(data, data + size), usage);
  11901. }
  11902. }
  11903. function _glBufferSubData(target, offset, size, data) {
  11904. if (GL.currentContext.supportsWebGL2EntryPoints) {
  11905. GLctx.bufferSubData(target, offset, HEAPU8, data, size);
  11906. return;
  11907. }
  11908. GLctx.bufferSubData(target, offset, HEAPU8.subarray(data, data + size));
  11909. }
  11910. function _glCheckFramebufferStatus(x0) {
  11911. return GLctx["checkFramebufferStatus"](x0);
  11912. }
  11913. function _glClear(x0) {
  11914. GLctx["clear"](x0);
  11915. }
  11916. function _glClearBufferfi(x0, x1, x2, x3) {
  11917. GLctx["clearBufferfi"](x0, x1, x2, x3);
  11918. }
  11919. function _glClearBufferfv(buffer, drawbuffer, value) {
  11920. GLctx["clearBufferfv"](buffer, drawbuffer, HEAPF32, value >> 2);
  11921. }
  11922. function _glClearBufferuiv(buffer, drawbuffer, value) {
  11923. GLctx["clearBufferuiv"](buffer, drawbuffer, HEAPU32, value >> 2);
  11924. }
  11925. function _glClearColor(x0, x1, x2, x3) {
  11926. GLctx["clearColor"](x0, x1, x2, x3);
  11927. }
  11928. function _glClearDepthf(x0) {
  11929. GLctx["clearDepth"](x0);
  11930. }
  11931. function _glClearStencil(x0) {
  11932. GLctx["clearStencil"](x0);
  11933. }
  11934. function _glClientWaitSync(sync, flags, timeoutLo, timeoutHi) {
  11935. timeoutLo = timeoutLo >>> 0;
  11936. timeoutHi = timeoutHi >>> 0;
  11937. var timeout = timeoutLo == 4294967295 && timeoutHi == 4294967295 ? -1 : makeBigInt(timeoutLo, timeoutHi, true);
  11938. return GLctx.clientWaitSync(GL.syncs[sync], flags, timeout);
  11939. }
  11940. function _glColorMask(red, green, blue, alpha) {
  11941. GLctx.colorMask(!!red, !!green, !!blue, !!alpha);
  11942. }
  11943. function _glCompileShader(shader) {
  11944. GLctx.compileShader(GL.shaders[shader]);
  11945. }
  11946. function _glCompressedTexImage2D(target, level, internalFormat, width, height, border, imageSize, data) {
  11947. if (GL.currentContext.supportsWebGL2EntryPoints) {
  11948. GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, HEAPU8, data, imageSize);
  11949. return;
  11950. }
  11951. GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, data ? HEAPU8.subarray(data, data + imageSize) : null);
  11952. }
  11953. function _glCompressedTexImage3D(target, level, internalFormat, width, height, depth, border, imageSize, data) {
  11954. if (GL.currentContext.supportsWebGL2EntryPoints) {
  11955. GLctx["compressedTexImage3D"](target, level, internalFormat, width, height, depth, border, HEAPU8, data, imageSize);
  11956. } else {
  11957. GLctx["compressedTexImage3D"](target, level, internalFormat, width, height, depth, border, data ? HEAPU8.subarray(data, data + imageSize) : null);
  11958. }
  11959. }
  11960. function _glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data) {
  11961. if (GL.currentContext.supportsWebGL2EntryPoints) {
  11962. GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, HEAPU8, data, imageSize);
  11963. return;
  11964. }
  11965. GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, data ? HEAPU8.subarray(data, data + imageSize) : null);
  11966. }
  11967. function _glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data) {
  11968. if (GL.currentContext.supportsWebGL2EntryPoints) {
  11969. GLctx["compressedTexSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, HEAPU8, data, imageSize);
  11970. } else {
  11971. GLctx["compressedTexSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, data ? HEAPU8.subarray(data, data + imageSize) : null);
  11972. }
  11973. }
  11974. function _glCopyBufferSubData(x0, x1, x2, x3, x4) {
  11975. GLctx["copyBufferSubData"](x0, x1, x2, x3, x4);
  11976. }
  11977. function _glCopyTexImage2D(x0, x1, x2, x3, x4, x5, x6, x7) {
  11978. GLctx["copyTexImage2D"](x0, x1, x2, x3, x4, x5, x6, x7);
  11979. }
  11980. function _glCopyTexSubImage2D(x0, x1, x2, x3, x4, x5, x6, x7) {
  11981. GLctx["copyTexSubImage2D"](x0, x1, x2, x3, x4, x5, x6, x7);
  11982. }
  11983. function _glCreateProgram() {
  11984. var id = GL.getNewId(GL.programs);
  11985. var program = GLctx.createProgram();
  11986. program.name = id;
  11987. GL.programs[id] = program;
  11988. return id;
  11989. }
  11990. function _glCreateShader(shaderType) {
  11991. var id = GL.getNewId(GL.shaders);
  11992. GL.shaders[id] = GLctx.createShader(shaderType);
  11993. return id;
  11994. }
  11995. function _glCullFace(x0) {
  11996. GLctx["cullFace"](x0);
  11997. }
  11998. function _glDeleteBuffers(n, buffers) {
  11999. for (var i = 0; i < n; i++) {
  12000. var id = HEAP32[buffers + i * 4 >> 2];
  12001. var buffer = GL.buffers[id];
  12002. if (!buffer) continue;
  12003. GLctx.deleteBuffer(buffer);
  12004. buffer.name = 0;
  12005. GL.buffers[id] = null;
  12006. if (id == GL.currArrayBuffer) GL.currArrayBuffer = 0;
  12007. if (id == GL.currElementArrayBuffer) GL.currElementArrayBuffer = 0;
  12008. }
  12009. }
  12010. function _glDeleteFramebuffers(n, framebuffers) {
  12011. for (var i = 0; i < n; ++i) {
  12012. var id = HEAP32[framebuffers + i * 4 >> 2];
  12013. var framebuffer = GL.framebuffers[id];
  12014. if (!framebuffer) continue;
  12015. GLctx.deleteFramebuffer(framebuffer);
  12016. framebuffer.name = 0;
  12017. GL.framebuffers[id] = null;
  12018. }
  12019. }
  12020. function _glDeleteProgram(id) {
  12021. if (!id) return;
  12022. var program = GL.programs[id];
  12023. if (!program) {
  12024. GL.recordError(1281);
  12025. return;
  12026. }
  12027. GLctx.deleteProgram(program);
  12028. program.name = 0;
  12029. GL.programs[id] = null;
  12030. GL.programInfos[id] = null;
  12031. }
  12032. function _glDeleteQueries(n, ids) {
  12033. for (var i = 0; i < n; i++) {
  12034. var id = HEAP32[ids + i * 4 >> 2];
  12035. var query = GL.queries[id];
  12036. if (!query) continue;
  12037. GLctx["deleteQuery"](query);
  12038. GL.queries[id] = null;
  12039. }
  12040. }
  12041. function _glDeleteRenderbuffers(n, renderbuffers) {
  12042. for (var i = 0; i < n; i++) {
  12043. var id = HEAP32[renderbuffers + i * 4 >> 2];
  12044. var renderbuffer = GL.renderbuffers[id];
  12045. if (!renderbuffer) continue;
  12046. GLctx.deleteRenderbuffer(renderbuffer);
  12047. renderbuffer.name = 0;
  12048. GL.renderbuffers[id] = null;
  12049. }
  12050. }
  12051. function _glDeleteSamplers(n, samplers) {
  12052. for (var i = 0; i < n; i++) {
  12053. var id = HEAP32[samplers + i * 4 >> 2];
  12054. var sampler = GL.samplers[id];
  12055. if (!sampler) continue;
  12056. GLctx["deleteSampler"](sampler);
  12057. sampler.name = 0;
  12058. GL.samplers[id] = null;
  12059. }
  12060. }
  12061. function _glDeleteShader(id) {
  12062. if (!id) return;
  12063. var shader = GL.shaders[id];
  12064. if (!shader) {
  12065. GL.recordError(1281);
  12066. return;
  12067. }
  12068. GLctx.deleteShader(shader);
  12069. GL.shaders[id] = null;
  12070. }
  12071. function _glDeleteSync(id) {
  12072. if (!id) return;
  12073. var sync = GL.syncs[id];
  12074. if (!sync) {
  12075. GL.recordError(1281);
  12076. return;
  12077. }
  12078. GLctx.deleteSync(sync);
  12079. sync.name = 0;
  12080. GL.syncs[id] = null;
  12081. }
  12082. function _glDeleteTextures(n, textures) {
  12083. for (var i = 0; i < n; i++) {
  12084. var id = HEAP32[textures + i * 4 >> 2];
  12085. var texture = GL.textures[id];
  12086. if (!texture) continue;
  12087. GLctx.deleteTexture(texture);
  12088. texture.name = 0;
  12089. GL.textures[id] = null;
  12090. }
  12091. }
  12092. function _glDeleteTransformFeedbacks(n, ids) {
  12093. for (var i = 0; i < n; i++) {
  12094. var id = HEAP32[ids + i * 4 >> 2];
  12095. var transformFeedback = GL.transformFeedbacks[id];
  12096. if (!transformFeedback) continue;
  12097. GLctx["deleteTransformFeedback"](transformFeedback);
  12098. transformFeedback.name = 0;
  12099. GL.transformFeedbacks[id] = null;
  12100. }
  12101. }
  12102. function _glDeleteVertexArrays(n, vaos) {
  12103. for (var i = 0; i < n; i++) {
  12104. var id = HEAP32[vaos + i * 4 >> 2];
  12105. GLctx["deleteVertexArray"](GL.vaos[id]);
  12106. GL.vaos[id] = null;
  12107. }
  12108. }
  12109. function _glDepthFunc(x0) {
  12110. GLctx["depthFunc"](x0);
  12111. }
  12112. function _glDepthMask(flag) {
  12113. GLctx.depthMask(!!flag);
  12114. }
  12115. function _glDetachShader(program, shader) {
  12116. GLctx.detachShader(GL.programs[program], GL.shaders[shader]);
  12117. }
  12118. function _glDisable(x0) {
  12119. GLctx["disable"](x0);
  12120. }
  12121. function _glDisableVertexAttribArray(index) {
  12122. GLctx.disableVertexAttribArray(index);
  12123. }
  12124. function _glDrawArrays(mode, first, count) {
  12125. GLctx.drawArrays(mode, first, count);
  12126. }
  12127. function _glDrawArraysInstanced(mode, first, count, primcount) {
  12128. GLctx["drawArraysInstanced"](mode, first, count, primcount);
  12129. }
  12130. function _glDrawBuffers(n, bufs) {
  12131. var bufArray = GL.tempFixedLengthArray[n];
  12132. for (var i = 0; i < n; i++) {
  12133. bufArray[i] = HEAP32[bufs + i * 4 >> 2];
  12134. }
  12135. GLctx["drawBuffers"](bufArray);
  12136. }
  12137. function _glDrawElements(mode, count, type, indices) {
  12138. GLctx.drawElements(mode, count, type, indices);
  12139. }
  12140. function _glDrawElementsInstanced(mode, count, type, indices, primcount) {
  12141. GLctx["drawElementsInstanced"](mode, count, type, indices, primcount);
  12142. }
  12143. function _glEnable(x0) {
  12144. GLctx["enable"](x0);
  12145. }
  12146. function _glEnableVertexAttribArray(index) {
  12147. GLctx.enableVertexAttribArray(index);
  12148. }
  12149. function _glEndQuery(x0) {
  12150. GLctx["endQuery"](x0);
  12151. }
  12152. function _glEndTransformFeedback() {
  12153. GLctx["endTransformFeedback"]();
  12154. }
  12155. function _glFenceSync(condition, flags) {
  12156. var sync = GLctx.fenceSync(condition, flags);
  12157. if (sync) {
  12158. var id = GL.getNewId(GL.syncs);
  12159. sync.name = id;
  12160. GL.syncs[id] = sync;
  12161. return id;
  12162. } else {
  12163. return 0;
  12164. }
  12165. }
  12166. function _glFinish() {
  12167. GLctx["finish"]();
  12168. }
  12169. function _glFlush() {
  12170. GLctx["flush"]();
  12171. }
  12172. function emscriptenWebGLGetBufferBinding(target) {
  12173. switch (target) {
  12174. case 34962:
  12175. target = 34964;
  12176. break;
  12177. case 34963:
  12178. target = 34965;
  12179. break;
  12180. case 35051:
  12181. target = 35053;
  12182. break;
  12183. case 35052:
  12184. target = 35055;
  12185. break;
  12186. case 35982:
  12187. target = 35983;
  12188. break;
  12189. case 36662:
  12190. target = 36662;
  12191. break;
  12192. case 36663:
  12193. target = 36663;
  12194. break;
  12195. case 35345:
  12196. target = 35368;
  12197. break;
  12198. }
  12199. var buffer = GLctx.getParameter(target);
  12200. if (buffer) return buffer.name | 0; else return 0;
  12201. }
  12202. function emscriptenWebGLValidateMapBufferTarget(target) {
  12203. switch (target) {
  12204. case 34962:
  12205. case 34963:
  12206. case 36662:
  12207. case 36663:
  12208. case 35051:
  12209. case 35052:
  12210. case 35882:
  12211. case 35982:
  12212. case 35345:
  12213. return true;
  12214. default:
  12215. return false;
  12216. }
  12217. }
  12218. function _glFlushMappedBufferRange(target, offset, length) {
  12219. if (!emscriptenWebGLValidateMapBufferTarget(target)) {
  12220. GL.recordError(1280);
  12221. err("GL_INVALID_ENUM in glFlushMappedBufferRange");
  12222. return;
  12223. }
  12224. var mapping = GL.mappedBuffers[emscriptenWebGLGetBufferBinding(target)];
  12225. if (!mapping) {
  12226. GL.recordError(1282);
  12227. Module.printError("buffer was never mapped in glFlushMappedBufferRange");
  12228. return;
  12229. }
  12230. if (!(mapping.access & 16)) {
  12231. GL.recordError(1282);
  12232. Module.printError("buffer was not mapped with GL_MAP_FLUSH_EXPLICIT_BIT in glFlushMappedBufferRange");
  12233. return;
  12234. }
  12235. if (offset < 0 || length < 0 || offset + length > mapping.length) {
  12236. GL.recordError(1281);
  12237. Module.printError("invalid range in glFlushMappedBufferRange");
  12238. return;
  12239. }
  12240. GLctx.bufferSubData(target, mapping.offset, HEAPU8.subarray(mapping.mem + offset, mapping.mem + offset + length));
  12241. }
  12242. function _glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer) {
  12243. GLctx.framebufferRenderbuffer(target, attachment, renderbuffertarget, GL.renderbuffers[renderbuffer]);
  12244. }
  12245. function _glFramebufferTexture2D(target, attachment, textarget, texture, level) {
  12246. GLctx.framebufferTexture2D(target, attachment, textarget, GL.textures[texture], level);
  12247. }
  12248. function _glFramebufferTextureLayer(target, attachment, texture, level, layer) {
  12249. GLctx.framebufferTextureLayer(target, attachment, GL.textures[texture], level, layer);
  12250. }
  12251. function _glFrontFace(x0) {
  12252. GLctx["frontFace"](x0);
  12253. }
  12254. function _glGenBuffers(n, buffers) {
  12255. for (var i = 0; i < n; i++) {
  12256. var buffer = GLctx.createBuffer();
  12257. if (!buffer) {
  12258. GL.recordError(1282);
  12259. while (i < n) HEAP32[buffers + i++ * 4 >> 2] = 0;
  12260. return;
  12261. }
  12262. var id = GL.getNewId(GL.buffers);
  12263. buffer.name = id;
  12264. GL.buffers[id] = buffer;
  12265. HEAP32[buffers + i * 4 >> 2] = id;
  12266. }
  12267. }
  12268. function _glGenFramebuffers(n, ids) {
  12269. for (var i = 0; i < n; ++i) {
  12270. var framebuffer = GLctx.createFramebuffer();
  12271. if (!framebuffer) {
  12272. GL.recordError(1282);
  12273. while (i < n) HEAP32[ids + i++ * 4 >> 2] = 0;
  12274. return;
  12275. }
  12276. var id = GL.getNewId(GL.framebuffers);
  12277. framebuffer.name = id;
  12278. GL.framebuffers[id] = framebuffer;
  12279. HEAP32[ids + i * 4 >> 2] = id;
  12280. }
  12281. }
  12282. function _glGenQueries(n, ids) {
  12283. for (var i = 0; i < n; i++) {
  12284. var query = GLctx["createQuery"]();
  12285. if (!query) {
  12286. GL.recordError(1282);
  12287. while (i < n) HEAP32[ids + i++ * 4 >> 2] = 0;
  12288. return;
  12289. }
  12290. var id = GL.getNewId(GL.queries);
  12291. query.name = id;
  12292. GL.queries[id] = query;
  12293. HEAP32[ids + i * 4 >> 2] = id;
  12294. }
  12295. }
  12296. function _glGenRenderbuffers(n, renderbuffers) {
  12297. for (var i = 0; i < n; i++) {
  12298. var renderbuffer = GLctx.createRenderbuffer();
  12299. if (!renderbuffer) {
  12300. GL.recordError(1282);
  12301. while (i < n) HEAP32[renderbuffers + i++ * 4 >> 2] = 0;
  12302. return;
  12303. }
  12304. var id = GL.getNewId(GL.renderbuffers);
  12305. renderbuffer.name = id;
  12306. GL.renderbuffers[id] = renderbuffer;
  12307. HEAP32[renderbuffers + i * 4 >> 2] = id;
  12308. }
  12309. }
  12310. function _glGenSamplers(n, samplers) {
  12311. for (var i = 0; i < n; i++) {
  12312. var sampler = GLctx["createSampler"]();
  12313. if (!sampler) {
  12314. GL.recordError(1282);
  12315. while (i < n) HEAP32[samplers + i++ * 4 >> 2] = 0;
  12316. return;
  12317. }
  12318. var id = GL.getNewId(GL.samplers);
  12319. sampler.name = id;
  12320. GL.samplers[id] = sampler;
  12321. HEAP32[samplers + i * 4 >> 2] = id;
  12322. }
  12323. }
  12324. function _glGenTextures(n, textures) {
  12325. for (var i = 0; i < n; i++) {
  12326. var texture = GLctx.createTexture();
  12327. if (!texture) {
  12328. GL.recordError(1282);
  12329. while (i < n) HEAP32[textures + i++ * 4 >> 2] = 0;
  12330. return;
  12331. }
  12332. var id = GL.getNewId(GL.textures);
  12333. texture.name = id;
  12334. GL.textures[id] = texture;
  12335. HEAP32[textures + i * 4 >> 2] = id;
  12336. }
  12337. }
  12338. function _glGenTransformFeedbacks(n, ids) {
  12339. for (var i = 0; i < n; i++) {
  12340. var transformFeedback = GLctx["createTransformFeedback"]();
  12341. if (!transformFeedback) {
  12342. GL.recordError(1282);
  12343. while (i < n) HEAP32[ids + i++ * 4 >> 2] = 0;
  12344. return;
  12345. }
  12346. var id = GL.getNewId(GL.transformFeedbacks);
  12347. transformFeedback.name = id;
  12348. GL.transformFeedbacks[id] = transformFeedback;
  12349. HEAP32[ids + i * 4 >> 2] = id;
  12350. }
  12351. }
  12352. function _glGenVertexArrays(n, arrays) {
  12353. for (var i = 0; i < n; i++) {
  12354. var vao = GLctx["createVertexArray"]();
  12355. if (!vao) {
  12356. GL.recordError(1282);
  12357. while (i < n) HEAP32[arrays + i++ * 4 >> 2] = 0;
  12358. return;
  12359. }
  12360. var id = GL.getNewId(GL.vaos);
  12361. vao.name = id;
  12362. GL.vaos[id] = vao;
  12363. HEAP32[arrays + i * 4 >> 2] = id;
  12364. }
  12365. }
  12366. function _glGenerateMipmap(x0) {
  12367. GLctx["generateMipmap"](x0);
  12368. }
  12369. function _glGetActiveAttrib(program, index, bufSize, length, size, type, name) {
  12370. program = GL.programs[program];
  12371. var info = GLctx.getActiveAttrib(program, index);
  12372. if (!info) return;
  12373. if (bufSize > 0 && name) {
  12374. var numBytesWrittenExclNull = stringToUTF8(info.name, name, bufSize);
  12375. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12376. } else {
  12377. if (length) HEAP32[length >> 2] = 0;
  12378. }
  12379. if (size) HEAP32[size >> 2] = info.size;
  12380. if (type) HEAP32[type >> 2] = info.type;
  12381. }
  12382. function _glGetActiveUniform(program, index, bufSize, length, size, type, name) {
  12383. program = GL.programs[program];
  12384. var info = GLctx.getActiveUniform(program, index);
  12385. if (!info) return;
  12386. if (bufSize > 0 && name) {
  12387. var numBytesWrittenExclNull = stringToUTF8(info.name, name, bufSize);
  12388. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12389. } else {
  12390. if (length) HEAP32[length >> 2] = 0;
  12391. }
  12392. if (size) HEAP32[size >> 2] = info.size;
  12393. if (type) HEAP32[type >> 2] = info.type;
  12394. }
  12395. function _glGetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName) {
  12396. program = GL.programs[program];
  12397. var result = GLctx["getActiveUniformBlockName"](program, uniformBlockIndex);
  12398. if (!result) return;
  12399. if (uniformBlockName && bufSize > 0) {
  12400. var numBytesWrittenExclNull = stringToUTF8(result, uniformBlockName, bufSize);
  12401. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12402. } else {
  12403. if (length) HEAP32[length >> 2] = 0;
  12404. }
  12405. }
  12406. function _glGetActiveUniformBlockiv(program, uniformBlockIndex, pname, params) {
  12407. if (!params) {
  12408. GL.recordError(1281);
  12409. return;
  12410. }
  12411. program = GL.programs[program];
  12412. switch (pname) {
  12413. case 35393:
  12414. var name = GLctx["getActiveUniformBlockName"](program, uniformBlockIndex);
  12415. HEAP32[params >> 2] = name.length + 1;
  12416. return;
  12417. default:
  12418. var result = GLctx["getActiveUniformBlockParameter"](program, uniformBlockIndex, pname);
  12419. if (!result) return;
  12420. if (typeof result == "number") {
  12421. HEAP32[params >> 2] = result;
  12422. } else {
  12423. for (var i = 0; i < result.length; i++) {
  12424. HEAP32[params + i * 4 >> 2] = result[i];
  12425. }
  12426. }
  12427. }
  12428. }
  12429. function _glGetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params) {
  12430. if (!params) {
  12431. GL.recordError(1281);
  12432. return;
  12433. }
  12434. if (uniformCount > 0 && uniformIndices == 0) {
  12435. GL.recordError(1281);
  12436. return;
  12437. }
  12438. program = GL.programs[program];
  12439. var ids = [];
  12440. for (var i = 0; i < uniformCount; i++) {
  12441. ids.push(HEAP32[uniformIndices + i * 4 >> 2]);
  12442. }
  12443. var result = GLctx["getActiveUniforms"](program, ids, pname);
  12444. if (!result) return;
  12445. var len = result.length;
  12446. for (var i = 0; i < len; i++) {
  12447. HEAP32[params + i * 4 >> 2] = result[i];
  12448. }
  12449. }
  12450. function _glGetAttribLocation(program, name) {
  12451. return GLctx.getAttribLocation(GL.programs[program], Pointer_stringify(name));
  12452. }
  12453. function _glGetError() {
  12454. if (GL.lastError) {
  12455. var error = GL.lastError;
  12456. GL.lastError = 0;
  12457. return error;
  12458. } else {
  12459. return GLctx.getError();
  12460. }
  12461. }
  12462. function _glGetFramebufferAttachmentParameteriv(target, attachment, pname, params) {
  12463. var result = GLctx.getFramebufferAttachmentParameter(target, attachment, pname);
  12464. if (result instanceof WebGLRenderbuffer || result instanceof WebGLTexture) {
  12465. result = result.name | 0;
  12466. }
  12467. HEAP32[params >> 2] = result;
  12468. }
  12469. function emscriptenWebGLGetIndexed(target, index, data, type) {
  12470. if (!data) {
  12471. GL.recordError(1281);
  12472. return;
  12473. }
  12474. var result = GLctx["getIndexedParameter"](target, index);
  12475. var ret;
  12476. switch (typeof result) {
  12477. case "boolean":
  12478. ret = result ? 1 : 0;
  12479. break;
  12480. case "number":
  12481. ret = result;
  12482. break;
  12483. case "object":
  12484. if (result === null) {
  12485. switch (target) {
  12486. case 35983:
  12487. case 35368:
  12488. ret = 0;
  12489. break;
  12490. default:
  12491. {
  12492. GL.recordError(1280);
  12493. return;
  12494. }
  12495. }
  12496. } else if (result instanceof WebGLBuffer) {
  12497. ret = result.name | 0;
  12498. } else {
  12499. GL.recordError(1280);
  12500. return;
  12501. }
  12502. break;
  12503. default:
  12504. GL.recordError(1280);
  12505. return;
  12506. }
  12507. switch (type) {
  12508. case "Integer64":
  12509. 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];
  12510. break;
  12511. case "Integer":
  12512. HEAP32[data >> 2] = ret;
  12513. break;
  12514. case "Float":
  12515. HEAPF32[data >> 2] = ret;
  12516. break;
  12517. case "Boolean":
  12518. HEAP8[data >> 0] = ret ? 1 : 0;
  12519. break;
  12520. default:
  12521. throw "internal emscriptenWebGLGetIndexed() error, bad type: " + type;
  12522. }
  12523. }
  12524. function _glGetIntegeri_v(target, index, data) {
  12525. emscriptenWebGLGetIndexed(target, index, data, "Integer");
  12526. }
  12527. function emscriptenWebGLGet(name_, p, type) {
  12528. if (!p) {
  12529. GL.recordError(1281);
  12530. return;
  12531. }
  12532. var ret = undefined;
  12533. switch (name_) {
  12534. case 36346:
  12535. ret = 1;
  12536. break;
  12537. case 36344:
  12538. if (type !== "Integer" && type !== "Integer64") {
  12539. GL.recordError(1280);
  12540. }
  12541. return;
  12542. case 34814:
  12543. case 36345:
  12544. ret = 0;
  12545. break;
  12546. case 34466:
  12547. var formats = GLctx.getParameter(34467);
  12548. ret = formats.length;
  12549. break;
  12550. case 33309:
  12551. if (GLctx.canvas.GLctxObject.version < 2) {
  12552. GL.recordError(1282);
  12553. return;
  12554. }
  12555. var exts = GLctx.getSupportedExtensions();
  12556. ret = 2 * exts.length;
  12557. break;
  12558. case 33307:
  12559. case 33308:
  12560. if (GLctx.canvas.GLctxObject.version < 2) {
  12561. GL.recordError(1280);
  12562. return;
  12563. }
  12564. ret = name_ == 33307 ? 3 : 0;
  12565. break;
  12566. }
  12567. if (ret === undefined) {
  12568. var result = GLctx.getParameter(name_);
  12569. switch (typeof result) {
  12570. case "number":
  12571. ret = result;
  12572. break;
  12573. case "boolean":
  12574. ret = result ? 1 : 0;
  12575. break;
  12576. case "string":
  12577. GL.recordError(1280);
  12578. return;
  12579. case "object":
  12580. if (result === null) {
  12581. switch (name_) {
  12582. case 34964:
  12583. case 35725:
  12584. case 34965:
  12585. case 36006:
  12586. case 36007:
  12587. case 32873:
  12588. case 34229:
  12589. case 35097:
  12590. case 36389:
  12591. case 34068:
  12592. {
  12593. ret = 0;
  12594. break;
  12595. }
  12596. default:
  12597. {
  12598. GL.recordError(1280);
  12599. return;
  12600. }
  12601. }
  12602. } else if (result instanceof Float32Array || result instanceof Uint32Array || result instanceof Int32Array || result instanceof Array) {
  12603. for (var i = 0; i < result.length; ++i) {
  12604. switch (type) {
  12605. case "Integer":
  12606. HEAP32[p + i * 4 >> 2] = result[i];
  12607. break;
  12608. case "Float":
  12609. HEAPF32[p + i * 4 >> 2] = result[i];
  12610. break;
  12611. case "Boolean":
  12612. HEAP8[p + i >> 0] = result[i] ? 1 : 0;
  12613. break;
  12614. default:
  12615. throw "internal glGet error, bad type: " + type;
  12616. }
  12617. }
  12618. return;
  12619. } 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) {
  12620. ret = result.name | 0;
  12621. } else {
  12622. GL.recordError(1280);
  12623. return;
  12624. }
  12625. break;
  12626. default:
  12627. GL.recordError(1280);
  12628. return;
  12629. }
  12630. }
  12631. switch (type) {
  12632. case "Integer64":
  12633. 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];
  12634. break;
  12635. case "Integer":
  12636. HEAP32[p >> 2] = ret;
  12637. break;
  12638. case "Float":
  12639. HEAPF32[p >> 2] = ret;
  12640. break;
  12641. case "Boolean":
  12642. HEAP8[p >> 0] = ret ? 1 : 0;
  12643. break;
  12644. default:
  12645. throw "internal glGet error, bad type: " + type;
  12646. }
  12647. }
  12648. function _glGetIntegerv(name_, p) {
  12649. emscriptenWebGLGet(name_, p, "Integer");
  12650. }
  12651. function _glGetInternalformativ(target, internalformat, pname, bufSize, params) {
  12652. if (bufSize < 0) {
  12653. GL.recordError(1281);
  12654. return;
  12655. }
  12656. var samples = GLctx["getInternalformatParameter"](target, internalformat, 32937);
  12657. if (!samples) {
  12658. GL.recordError(1280);
  12659. return;
  12660. }
  12661. switch (pname) {
  12662. case 32937:
  12663. var n = Math.min(bufSize, samples.length);
  12664. for (var i = 0; i < n; i++) {
  12665. var v = samples[i];
  12666. HEAP32[params + i * 4 >> 2] = v;
  12667. }
  12668. break;
  12669. case 37760:
  12670. if (bufSize > 1) {
  12671. var v = samples.length;
  12672. HEAP32[params >> 2] = v;
  12673. }
  12674. break;
  12675. default:
  12676. GL.recordError(1280);
  12677. }
  12678. }
  12679. function _glGetProgramBinary(program, bufSize, length, binaryFormat, binary) {
  12680. GL.recordError(1282);
  12681. }
  12682. function _glGetProgramInfoLog(program, maxLength, length, infoLog) {
  12683. var log = GLctx.getProgramInfoLog(GL.programs[program]);
  12684. if (log === null) log = "(unknown error)";
  12685. if (maxLength > 0 && infoLog) {
  12686. var numBytesWrittenExclNull = stringToUTF8(log, infoLog, maxLength);
  12687. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12688. } else {
  12689. if (length) HEAP32[length >> 2] = 0;
  12690. }
  12691. }
  12692. function _glGetProgramiv(program, pname, p) {
  12693. if (!p) {
  12694. GL.recordError(1281);
  12695. return;
  12696. }
  12697. if (program >= GL.counter) {
  12698. GL.recordError(1281);
  12699. return;
  12700. }
  12701. var ptable = GL.programInfos[program];
  12702. if (!ptable) {
  12703. GL.recordError(1282);
  12704. return;
  12705. }
  12706. if (pname == 35716) {
  12707. var log = GLctx.getProgramInfoLog(GL.programs[program]);
  12708. if (log === null) log = "(unknown error)";
  12709. HEAP32[p >> 2] = log.length + 1;
  12710. } else if (pname == 35719) {
  12711. HEAP32[p >> 2] = ptable.maxUniformLength;
  12712. } else if (pname == 35722) {
  12713. if (ptable.maxAttributeLength == -1) {
  12714. program = GL.programs[program];
  12715. var numAttribs = GLctx.getProgramParameter(program, GLctx.ACTIVE_ATTRIBUTES);
  12716. ptable.maxAttributeLength = 0;
  12717. for (var i = 0; i < numAttribs; ++i) {
  12718. var activeAttrib = GLctx.getActiveAttrib(program, i);
  12719. ptable.maxAttributeLength = Math.max(ptable.maxAttributeLength, activeAttrib.name.length + 1);
  12720. }
  12721. }
  12722. HEAP32[p >> 2] = ptable.maxAttributeLength;
  12723. } else if (pname == 35381) {
  12724. if (ptable.maxUniformBlockNameLength == -1) {
  12725. program = GL.programs[program];
  12726. var numBlocks = GLctx.getProgramParameter(program, GLctx.ACTIVE_UNIFORM_BLOCKS);
  12727. ptable.maxUniformBlockNameLength = 0;
  12728. for (var i = 0; i < numBlocks; ++i) {
  12729. var activeBlockName = GLctx.getActiveUniformBlockName(program, i);
  12730. ptable.maxUniformBlockNameLength = Math.max(ptable.maxUniformBlockNameLength, activeBlockName.length + 1);
  12731. }
  12732. }
  12733. HEAP32[p >> 2] = ptable.maxUniformBlockNameLength;
  12734. } else {
  12735. HEAP32[p >> 2] = GLctx.getProgramParameter(GL.programs[program], pname);
  12736. }
  12737. }
  12738. function _glGetQueryObjectuiv(id, pname, params) {
  12739. if (!params) {
  12740. GL.recordError(1281);
  12741. return;
  12742. }
  12743. var query = GL.queries[id];
  12744. var param = GLctx["getQueryParameter"](query, pname);
  12745. var ret;
  12746. if (typeof param == "boolean") {
  12747. ret = param ? 1 : 0;
  12748. } else {
  12749. ret = param;
  12750. }
  12751. HEAP32[params >> 2] = ret;
  12752. }
  12753. function _glGetQueryiv(target, pname, params) {
  12754. if (!params) {
  12755. GL.recordError(1281);
  12756. return;
  12757. }
  12758. HEAP32[params >> 2] = GLctx["getQuery"](target, pname);
  12759. }
  12760. function _glGetRenderbufferParameteriv(target, pname, params) {
  12761. if (!params) {
  12762. GL.recordError(1281);
  12763. return;
  12764. }
  12765. HEAP32[params >> 2] = GLctx.getRenderbufferParameter(target, pname);
  12766. }
  12767. function _glGetShaderInfoLog(shader, maxLength, length, infoLog) {
  12768. var log = GLctx.getShaderInfoLog(GL.shaders[shader]);
  12769. if (log === null) log = "(unknown error)";
  12770. if (maxLength > 0 && infoLog) {
  12771. var numBytesWrittenExclNull = stringToUTF8(log, infoLog, maxLength);
  12772. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12773. } else {
  12774. if (length) HEAP32[length >> 2] = 0;
  12775. }
  12776. }
  12777. function _glGetShaderPrecisionFormat(shaderType, precisionType, range, precision) {
  12778. var result = GLctx.getShaderPrecisionFormat(shaderType, precisionType);
  12779. HEAP32[range >> 2] = result.rangeMin;
  12780. HEAP32[range + 4 >> 2] = result.rangeMax;
  12781. HEAP32[precision >> 2] = result.precision;
  12782. }
  12783. function _glGetShaderSource(shader, bufSize, length, source) {
  12784. var result = GLctx.getShaderSource(GL.shaders[shader]);
  12785. if (!result) return;
  12786. if (bufSize > 0 && source) {
  12787. var numBytesWrittenExclNull = stringToUTF8(result, source, bufSize);
  12788. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12789. } else {
  12790. if (length) HEAP32[length >> 2] = 0;
  12791. }
  12792. }
  12793. function _glGetShaderiv(shader, pname, p) {
  12794. if (!p) {
  12795. GL.recordError(1281);
  12796. return;
  12797. }
  12798. if (pname == 35716) {
  12799. var log = GLctx.getShaderInfoLog(GL.shaders[shader]);
  12800. if (log === null) log = "(unknown error)";
  12801. HEAP32[p >> 2] = log.length + 1;
  12802. } else if (pname == 35720) {
  12803. var source = GLctx.getShaderSource(GL.shaders[shader]);
  12804. var sourceLength = source === null || source.length == 0 ? 0 : source.length + 1;
  12805. HEAP32[p >> 2] = sourceLength;
  12806. } else {
  12807. HEAP32[p >> 2] = GLctx.getShaderParameter(GL.shaders[shader], pname);
  12808. }
  12809. }
  12810. function _glGetString(name_) {
  12811. if (GL.stringCache[name_]) return GL.stringCache[name_];
  12812. var ret;
  12813. switch (name_) {
  12814. case 7936:
  12815. case 7937:
  12816. case 37445:
  12817. case 37446:
  12818. ret = allocate(intArrayFromString(GLctx.getParameter(name_)), "i8", ALLOC_NORMAL);
  12819. break;
  12820. case 7938:
  12821. var glVersion = GLctx.getParameter(GLctx.VERSION);
  12822. if (GLctx.canvas.GLctxObject.version >= 2) glVersion = "OpenGL ES 3.0 (" + glVersion + ")"; else {
  12823. glVersion = "OpenGL ES 2.0 (" + glVersion + ")";
  12824. }
  12825. ret = allocate(intArrayFromString(glVersion), "i8", ALLOC_NORMAL);
  12826. break;
  12827. case 7939:
  12828. var exts = GLctx.getSupportedExtensions();
  12829. var gl_exts = [];
  12830. for (var i = 0; i < exts.length; ++i) {
  12831. gl_exts.push(exts[i]);
  12832. gl_exts.push("GL_" + exts[i]);
  12833. }
  12834. ret = allocate(intArrayFromString(gl_exts.join(" ")), "i8", ALLOC_NORMAL);
  12835. break;
  12836. case 35724:
  12837. var glslVersion = GLctx.getParameter(GLctx.SHADING_LANGUAGE_VERSION);
  12838. var ver_re = /^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/;
  12839. var ver_num = glslVersion.match(ver_re);
  12840. if (ver_num !== null) {
  12841. if (ver_num[1].length == 3) ver_num[1] = ver_num[1] + "0";
  12842. glslVersion = "OpenGL ES GLSL ES " + ver_num[1] + " (" + glslVersion + ")";
  12843. }
  12844. ret = allocate(intArrayFromString(glslVersion), "i8", ALLOC_NORMAL);
  12845. break;
  12846. default:
  12847. GL.recordError(1280);
  12848. return 0;
  12849. }
  12850. GL.stringCache[name_] = ret;
  12851. return ret;
  12852. }
  12853. function _glGetStringi(name, index) {
  12854. if (GLctx.canvas.GLctxObject.version < 2) {
  12855. GL.recordError(1282);
  12856. return 0;
  12857. }
  12858. var stringiCache = GL.stringiCache[name];
  12859. if (stringiCache) {
  12860. if (index < 0 || index >= stringiCache.length) {
  12861. GL.recordError(1281);
  12862. return 0;
  12863. }
  12864. return stringiCache[index];
  12865. }
  12866. switch (name) {
  12867. case 7939:
  12868. var exts = GLctx.getSupportedExtensions();
  12869. var gl_exts = [];
  12870. for (var i = 0; i < exts.length; ++i) {
  12871. gl_exts.push(allocate(intArrayFromString(exts[i]), "i8", ALLOC_NORMAL));
  12872. gl_exts.push(allocate(intArrayFromString("GL_" + exts[i]), "i8", ALLOC_NORMAL));
  12873. }
  12874. stringiCache = GL.stringiCache[name] = gl_exts;
  12875. if (index < 0 || index >= stringiCache.length) {
  12876. GL.recordError(1281);
  12877. return 0;
  12878. }
  12879. return stringiCache[index];
  12880. default:
  12881. GL.recordError(1280);
  12882. return 0;
  12883. }
  12884. }
  12885. function _glGetTexParameteriv(target, pname, params) {
  12886. if (!params) {
  12887. GL.recordError(1281);
  12888. return;
  12889. }
  12890. HEAP32[params >> 2] = GLctx.getTexParameter(target, pname);
  12891. }
  12892. function _glGetUniformBlockIndex(program, uniformBlockName) {
  12893. program = GL.programs[program];
  12894. uniformBlockName = Pointer_stringify(uniformBlockName);
  12895. return GLctx["getUniformBlockIndex"](program, uniformBlockName);
  12896. }
  12897. function _glGetUniformIndices(program, uniformCount, uniformNames, uniformIndices) {
  12898. if (!uniformIndices) {
  12899. GL.recordError(1281);
  12900. return;
  12901. }
  12902. if (uniformCount > 0 && (uniformNames == 0 || uniformIndices == 0)) {
  12903. GL.recordError(1281);
  12904. return;
  12905. }
  12906. program = GL.programs[program];
  12907. var names = [];
  12908. for (var i = 0; i < uniformCount; i++) names.push(Pointer_stringify(HEAP32[uniformNames + i * 4 >> 2]));
  12909. var result = GLctx["getUniformIndices"](program, names);
  12910. if (!result) return;
  12911. var len = result.length;
  12912. for (var i = 0; i < len; i++) {
  12913. HEAP32[uniformIndices + i * 4 >> 2] = result[i];
  12914. }
  12915. }
  12916. function _glGetUniformLocation(program, name) {
  12917. name = Pointer_stringify(name);
  12918. var arrayOffset = 0;
  12919. if (name.indexOf("]", name.length - 1) !== -1) {
  12920. var ls = name.lastIndexOf("[");
  12921. var arrayIndex = name.slice(ls + 1, -1);
  12922. if (arrayIndex.length > 0) {
  12923. arrayOffset = parseInt(arrayIndex);
  12924. if (arrayOffset < 0) {
  12925. return -1;
  12926. }
  12927. }
  12928. name = name.slice(0, ls);
  12929. }
  12930. var ptable = GL.programInfos[program];
  12931. if (!ptable) {
  12932. return -1;
  12933. }
  12934. var utable = ptable.uniforms;
  12935. var uniformInfo = utable[name];
  12936. if (uniformInfo && arrayOffset < uniformInfo[0]) {
  12937. return uniformInfo[1] + arrayOffset;
  12938. } else {
  12939. return -1;
  12940. }
  12941. }
  12942. function emscriptenWebGLGetUniform(program, location, params, type) {
  12943. if (!params) {
  12944. GL.recordError(1281);
  12945. return;
  12946. }
  12947. var data = GLctx.getUniform(GL.programs[program], GL.uniforms[location]);
  12948. if (typeof data == "number" || typeof data == "boolean") {
  12949. switch (type) {
  12950. case "Integer":
  12951. HEAP32[params >> 2] = data;
  12952. break;
  12953. case "Float":
  12954. HEAPF32[params >> 2] = data;
  12955. break;
  12956. default:
  12957. throw "internal emscriptenWebGLGetUniform() error, bad type: " + type;
  12958. }
  12959. } else {
  12960. for (var i = 0; i < data.length; i++) {
  12961. switch (type) {
  12962. case "Integer":
  12963. HEAP32[params + i * 4 >> 2] = data[i];
  12964. break;
  12965. case "Float":
  12966. HEAPF32[params + i * 4 >> 2] = data[i];
  12967. break;
  12968. default:
  12969. throw "internal emscriptenWebGLGetUniform() error, bad type: " + type;
  12970. }
  12971. }
  12972. }
  12973. }
  12974. function _glGetUniformiv(program, location, params) {
  12975. emscriptenWebGLGetUniform(program, location, params, "Integer");
  12976. }
  12977. function emscriptenWebGLGetVertexAttrib(index, pname, params, type) {
  12978. if (!params) {
  12979. GL.recordError(1281);
  12980. return;
  12981. }
  12982. var data = GLctx.getVertexAttrib(index, pname);
  12983. if (pname == 34975) {
  12984. HEAP32[params >> 2] = data["name"];
  12985. } else if (typeof data == "number" || typeof data == "boolean") {
  12986. switch (type) {
  12987. case "Integer":
  12988. HEAP32[params >> 2] = data;
  12989. break;
  12990. case "Float":
  12991. HEAPF32[params >> 2] = data;
  12992. break;
  12993. case "FloatToInteger":
  12994. HEAP32[params >> 2] = Math.fround(data);
  12995. break;
  12996. default:
  12997. throw "internal emscriptenWebGLGetVertexAttrib() error, bad type: " + type;
  12998. }
  12999. } else {
  13000. for (var i = 0; i < data.length; i++) {
  13001. switch (type) {
  13002. case "Integer":
  13003. HEAP32[params + i * 4 >> 2] = data[i];
  13004. break;
  13005. case "Float":
  13006. HEAPF32[params + i * 4 >> 2] = data[i];
  13007. break;
  13008. case "FloatToInteger":
  13009. HEAP32[params + i * 4 >> 2] = Math.fround(data[i]);
  13010. break;
  13011. default:
  13012. throw "internal emscriptenWebGLGetVertexAttrib() error, bad type: " + type;
  13013. }
  13014. }
  13015. }
  13016. }
  13017. function _glGetVertexAttribiv(index, pname, params) {
  13018. emscriptenWebGLGetVertexAttrib(index, pname, params, "FloatToInteger");
  13019. }
  13020. function _glInvalidateFramebuffer(target, numAttachments, attachments) {
  13021. var list = GL.tempFixedLengthArray[numAttachments];
  13022. for (var i = 0; i < numAttachments; i++) {
  13023. list[i] = HEAP32[attachments + i * 4 >> 2];
  13024. }
  13025. GLctx["invalidateFramebuffer"](target, list);
  13026. }
  13027. function _glIsEnabled(x0) {
  13028. return GLctx["isEnabled"](x0);
  13029. }
  13030. function _glIsVertexArray(array) {
  13031. var vao = GL.vaos[array];
  13032. if (!vao) return 0;
  13033. return GLctx["isVertexArray"](vao);
  13034. }
  13035. function _glLinkProgram(program) {
  13036. GLctx.linkProgram(GL.programs[program]);
  13037. GL.programInfos[program] = null;
  13038. GL.populateUniformTable(program);
  13039. }
  13040. function _glMapBufferRange(target, offset, length, access) {
  13041. if (access != 26 && access != 10) {
  13042. err("glMapBufferRange is only supported when access is MAP_WRITE|INVALIDATE_BUFFER");
  13043. return 0;
  13044. }
  13045. if (!emscriptenWebGLValidateMapBufferTarget(target)) {
  13046. GL.recordError(1280);
  13047. err("GL_INVALID_ENUM in glMapBufferRange");
  13048. return 0;
  13049. }
  13050. var mem = _malloc(length);
  13051. if (!mem) return 0;
  13052. GL.mappedBuffers[emscriptenWebGLGetBufferBinding(target)] = {
  13053. offset: offset,
  13054. length: length,
  13055. mem: mem,
  13056. access: access
  13057. };
  13058. return mem;
  13059. }
  13060. function _glPixelStorei(pname, param) {
  13061. if (pname == 3333) {
  13062. GL.packAlignment = param;
  13063. } else if (pname == 3317) {
  13064. GL.unpackAlignment = param;
  13065. }
  13066. GLctx.pixelStorei(pname, param);
  13067. }
  13068. function _glPolygonOffset(x0, x1) {
  13069. GLctx["polygonOffset"](x0, x1);
  13070. }
  13071. function _glProgramBinary(program, binaryFormat, binary, length) {
  13072. GL.recordError(1280);
  13073. }
  13074. function _glProgramParameteri(program, pname, value) {
  13075. GL.recordError(1280);
  13076. }
  13077. function _glReadBuffer(x0) {
  13078. GLctx["readBuffer"](x0);
  13079. }
  13080. function emscriptenWebGLComputeImageSize(width, height, sizePerPixel, alignment) {
  13081. function roundedToNextMultipleOf(x, y) {
  13082. return Math.floor((x + y - 1) / y) * y;
  13083. }
  13084. var plainRowSize = width * sizePerPixel;
  13085. var alignedRowSize = roundedToNextMultipleOf(plainRowSize, alignment);
  13086. return height <= 0 ? 0 : (height - 1) * alignedRowSize + plainRowSize;
  13087. }
  13088. function emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, internalFormat) {
  13089. var sizePerPixel;
  13090. var numChannels;
  13091. switch (format) {
  13092. case 6406:
  13093. case 6409:
  13094. case 6402:
  13095. case 6403:
  13096. case 36244:
  13097. numChannels = 1;
  13098. break;
  13099. case 6410:
  13100. case 33319:
  13101. case 33320:
  13102. numChannels = 2;
  13103. break;
  13104. case 6407:
  13105. case 35904:
  13106. case 36248:
  13107. numChannels = 3;
  13108. break;
  13109. case 6408:
  13110. case 35906:
  13111. case 36249:
  13112. numChannels = 4;
  13113. break;
  13114. default:
  13115. GL.recordError(1280);
  13116. return null;
  13117. }
  13118. switch (type) {
  13119. case 5121:
  13120. case 5120:
  13121. sizePerPixel = numChannels * 1;
  13122. break;
  13123. case 5123:
  13124. case 36193:
  13125. case 5131:
  13126. case 5122:
  13127. sizePerPixel = numChannels * 2;
  13128. break;
  13129. case 5125:
  13130. case 5126:
  13131. case 5124:
  13132. sizePerPixel = numChannels * 4;
  13133. break;
  13134. case 34042:
  13135. case 35902:
  13136. case 33640:
  13137. case 35899:
  13138. case 34042:
  13139. sizePerPixel = 4;
  13140. break;
  13141. case 33635:
  13142. case 32819:
  13143. case 32820:
  13144. sizePerPixel = 2;
  13145. break;
  13146. default:
  13147. GL.recordError(1280);
  13148. return null;
  13149. }
  13150. var bytes = emscriptenWebGLComputeImageSize(width, height, sizePerPixel, GL.unpackAlignment);
  13151. switch (type) {
  13152. case 5120:
  13153. return HEAP8.subarray(pixels, pixels + bytes);
  13154. case 5121:
  13155. return HEAPU8.subarray(pixels, pixels + bytes);
  13156. case 5122:
  13157. return HEAP16.subarray(pixels >> 1, pixels + bytes >> 1);
  13158. case 5124:
  13159. return HEAP32.subarray(pixels >> 2, pixels + bytes >> 2);
  13160. case 5126:
  13161. return HEAPF32.subarray(pixels >> 2, pixels + bytes >> 2);
  13162. case 5125:
  13163. case 34042:
  13164. case 35902:
  13165. case 33640:
  13166. case 35899:
  13167. case 34042:
  13168. return HEAPU32.subarray(pixels >> 2, pixels + bytes >> 2);
  13169. case 5123:
  13170. case 33635:
  13171. case 32819:
  13172. case 32820:
  13173. case 36193:
  13174. case 5131:
  13175. return HEAPU16.subarray(pixels >> 1, pixels + bytes >> 1);
  13176. default:
  13177. GL.recordError(1280);
  13178. return null;
  13179. }
  13180. }
  13181. function emscriptenWebGLGetHeapForType(type) {
  13182. switch (type) {
  13183. case 5120:
  13184. return HEAP8;
  13185. case 5121:
  13186. return HEAPU8;
  13187. case 5122:
  13188. return HEAP16;
  13189. case 5123:
  13190. case 33635:
  13191. case 32819:
  13192. case 32820:
  13193. case 36193:
  13194. case 5131:
  13195. return HEAPU16;
  13196. case 5124:
  13197. return HEAP32;
  13198. case 5125:
  13199. case 34042:
  13200. case 35902:
  13201. case 33640:
  13202. case 35899:
  13203. case 34042:
  13204. return HEAPU32;
  13205. case 5126:
  13206. return HEAPF32;
  13207. default:
  13208. return null;
  13209. }
  13210. }
  13211. function emscriptenWebGLGetShiftForType(type) {
  13212. switch (type) {
  13213. case 5120:
  13214. case 5121:
  13215. return 0;
  13216. case 5122:
  13217. case 5123:
  13218. case 33635:
  13219. case 32819:
  13220. case 32820:
  13221. case 36193:
  13222. case 5131:
  13223. return 1;
  13224. case 5124:
  13225. case 5126:
  13226. case 5125:
  13227. case 34042:
  13228. case 35902:
  13229. case 33640:
  13230. case 35899:
  13231. case 34042:
  13232. return 2;
  13233. default:
  13234. return 0;
  13235. }
  13236. }
  13237. function _glReadPixels(x, y, width, height, format, type, pixels) {
  13238. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13239. if (GLctx.currentPixelPackBufferBinding) {
  13240. GLctx.readPixels(x, y, width, height, format, type, pixels);
  13241. } else {
  13242. GLctx.readPixels(x, y, width, height, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13243. }
  13244. return;
  13245. }
  13246. var pixelData = emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, format);
  13247. if (!pixelData) {
  13248. GL.recordError(1280);
  13249. return;
  13250. }
  13251. GLctx.readPixels(x, y, width, height, format, type, pixelData);
  13252. }
  13253. function _glRenderbufferStorage(x0, x1, x2, x3) {
  13254. GLctx["renderbufferStorage"](x0, x1, x2, x3);
  13255. }
  13256. function _glRenderbufferStorageMultisample(x0, x1, x2, x3, x4) {
  13257. GLctx["renderbufferStorageMultisample"](x0, x1, x2, x3, x4);
  13258. }
  13259. function _glSamplerParameteri(sampler, pname, param) {
  13260. GLctx["samplerParameteri"](sampler ? GL.samplers[sampler] : null, pname, param);
  13261. }
  13262. function _glScissor(x0, x1, x2, x3) {
  13263. GLctx["scissor"](x0, x1, x2, x3);
  13264. }
  13265. function _glShaderSource(shader, count, string, length) {
  13266. var source = GL.getSource(shader, count, string, length);
  13267. GLctx.shaderSource(GL.shaders[shader], source);
  13268. }
  13269. function _glStencilFuncSeparate(x0, x1, x2, x3) {
  13270. GLctx["stencilFuncSeparate"](x0, x1, x2, x3);
  13271. }
  13272. function _glStencilMask(x0) {
  13273. GLctx["stencilMask"](x0);
  13274. }
  13275. function _glStencilOpSeparate(x0, x1, x2, x3) {
  13276. GLctx["stencilOpSeparate"](x0, x1, x2, x3);
  13277. }
  13278. function _glTexImage2D(target, level, internalFormat, width, height, border, format, type, pixels) {
  13279. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13280. if (GLctx.currentPixelUnpackBufferBinding) {
  13281. GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, pixels);
  13282. } else if (pixels != 0) {
  13283. GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13284. } else {
  13285. GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, null);
  13286. }
  13287. return;
  13288. }
  13289. var pixelData = null;
  13290. if (pixels) pixelData = emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, internalFormat);
  13291. GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, pixelData);
  13292. }
  13293. function _glTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels) {
  13294. if (GLctx.currentPixelUnpackBufferBinding) {
  13295. GLctx["texImage3D"](target, level, internalFormat, width, height, depth, border, format, type, pixels);
  13296. } else if (pixels != 0) {
  13297. GLctx["texImage3D"](target, level, internalFormat, width, height, depth, border, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13298. } else {
  13299. GLctx["texImage3D"](target, level, internalFormat, width, height, depth, border, format, type, null);
  13300. }
  13301. }
  13302. function _glTexParameterf(x0, x1, x2) {
  13303. GLctx["texParameterf"](x0, x1, x2);
  13304. }
  13305. function _glTexParameteri(x0, x1, x2) {
  13306. GLctx["texParameteri"](x0, x1, x2);
  13307. }
  13308. function _glTexParameteriv(target, pname, params) {
  13309. var param = HEAP32[params >> 2];
  13310. GLctx.texParameteri(target, pname, param);
  13311. }
  13312. function _glTexStorage2D(x0, x1, x2, x3, x4) {
  13313. GLctx["texStorage2D"](x0, x1, x2, x3, x4);
  13314. }
  13315. function _glTexStorage3D(x0, x1, x2, x3, x4, x5) {
  13316. GLctx["texStorage3D"](x0, x1, x2, x3, x4, x5);
  13317. }
  13318. function _glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels) {
  13319. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13320. if (GLctx.currentPixelUnpackBufferBinding) {
  13321. GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
  13322. } else if (pixels != 0) {
  13323. GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13324. } else {
  13325. GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, null);
  13326. }
  13327. return;
  13328. }
  13329. var pixelData = null;
  13330. if (pixels) pixelData = emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, 0);
  13331. GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixelData);
  13332. }
  13333. function _glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels) {
  13334. if (GLctx.currentPixelUnpackBufferBinding) {
  13335. GLctx["texSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
  13336. } else if (pixels != 0) {
  13337. GLctx["texSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13338. } else {
  13339. GLctx["texSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, null);
  13340. }
  13341. }
  13342. function _glTransformFeedbackVaryings(program, count, varyings, bufferMode) {
  13343. program = GL.programs[program];
  13344. var vars = [];
  13345. for (var i = 0; i < count; i++) vars.push(Pointer_stringify(HEAP32[varyings + i * 4 >> 2]));
  13346. GLctx["transformFeedbackVaryings"](program, vars, bufferMode);
  13347. }
  13348. function _glUniform1fv(location, count, value) {
  13349. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13350. GLctx.uniform1fv(GL.uniforms[location], HEAPF32, value >> 2, count);
  13351. return;
  13352. }
  13353. var view;
  13354. if (count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13355. view = GL.miniTempBufferViews[count - 1];
  13356. for (var i = 0; i < count; ++i) {
  13357. view[i] = HEAPF32[value + 4 * i >> 2];
  13358. }
  13359. } else {
  13360. view = HEAPF32.subarray(value >> 2, value + count * 4 >> 2);
  13361. }
  13362. GLctx.uniform1fv(GL.uniforms[location], view);
  13363. }
  13364. function _glUniform1i(location, v0) {
  13365. GLctx.uniform1i(GL.uniforms[location], v0);
  13366. }
  13367. function _glUniform1iv(location, count, value) {
  13368. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13369. GLctx.uniform1iv(GL.uniforms[location], HEAP32, value >> 2, count);
  13370. return;
  13371. }
  13372. GLctx.uniform1iv(GL.uniforms[location], HEAP32.subarray(value >> 2, value + count * 4 >> 2));
  13373. }
  13374. function _glUniform1uiv(location, count, value) {
  13375. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13376. GLctx.uniform1uiv(GL.uniforms[location], HEAPU32, value >> 2, count);
  13377. } else {
  13378. GLctx.uniform1uiv(GL.uniforms[location], HEAPU32.subarray(value >> 2, value + count * 4 >> 2));
  13379. }
  13380. }
  13381. function _glUniform2fv(location, count, value) {
  13382. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13383. GLctx.uniform2fv(GL.uniforms[location], HEAPF32, value >> 2, count * 2);
  13384. return;
  13385. }
  13386. var view;
  13387. if (2 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13388. view = GL.miniTempBufferViews[2 * count - 1];
  13389. for (var i = 0; i < 2 * count; i += 2) {
  13390. view[i] = HEAPF32[value + 4 * i >> 2];
  13391. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13392. }
  13393. } else {
  13394. view = HEAPF32.subarray(value >> 2, value + count * 8 >> 2);
  13395. }
  13396. GLctx.uniform2fv(GL.uniforms[location], view);
  13397. }
  13398. function _glUniform2iv(location, count, value) {
  13399. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13400. GLctx.uniform2iv(GL.uniforms[location], HEAP32, value >> 2, count * 2);
  13401. return;
  13402. }
  13403. GLctx.uniform2iv(GL.uniforms[location], HEAP32.subarray(value >> 2, value + count * 8 >> 2));
  13404. }
  13405. function _glUniform2uiv(location, count, value) {
  13406. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13407. GLctx.uniform2uiv(GL.uniforms[location], HEAPU32, value >> 2, count * 2);
  13408. } else {
  13409. GLctx.uniform2uiv(GL.uniforms[location], HEAPU32.subarray(value >> 2, value + count * 8 >> 2));
  13410. }
  13411. }
  13412. function _glUniform3fv(location, count, value) {
  13413. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13414. GLctx.uniform3fv(GL.uniforms[location], HEAPF32, value >> 2, count * 3);
  13415. return;
  13416. }
  13417. var view;
  13418. if (3 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13419. view = GL.miniTempBufferViews[3 * count - 1];
  13420. for (var i = 0; i < 3 * count; i += 3) {
  13421. view[i] = HEAPF32[value + 4 * i >> 2];
  13422. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13423. view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
  13424. }
  13425. } else {
  13426. view = HEAPF32.subarray(value >> 2, value + count * 12 >> 2);
  13427. }
  13428. GLctx.uniform3fv(GL.uniforms[location], view);
  13429. }
  13430. function _glUniform3iv(location, count, value) {
  13431. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13432. GLctx.uniform3iv(GL.uniforms[location], HEAP32, value >> 2, count * 3);
  13433. return;
  13434. }
  13435. GLctx.uniform3iv(GL.uniforms[location], HEAP32.subarray(value >> 2, value + count * 12 >> 2));
  13436. }
  13437. function _glUniform3uiv(location, count, value) {
  13438. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13439. GLctx.uniform3uiv(GL.uniforms[location], HEAPU32, value >> 2, count * 3);
  13440. } else {
  13441. GLctx.uniform3uiv(GL.uniforms[location], HEAPU32.subarray(value >> 2, value + count * 12 >> 2));
  13442. }
  13443. }
  13444. function _glUniform4fv(location, count, value) {
  13445. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13446. GLctx.uniform4fv(GL.uniforms[location], HEAPF32, value >> 2, count * 4);
  13447. return;
  13448. }
  13449. var view;
  13450. if (4 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13451. view = GL.miniTempBufferViews[4 * count - 1];
  13452. for (var i = 0; i < 4 * count; i += 4) {
  13453. view[i] = HEAPF32[value + 4 * i >> 2];
  13454. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13455. view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
  13456. view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
  13457. }
  13458. } else {
  13459. view = HEAPF32.subarray(value >> 2, value + count * 16 >> 2);
  13460. }
  13461. GLctx.uniform4fv(GL.uniforms[location], view);
  13462. }
  13463. function _glUniform4iv(location, count, value) {
  13464. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13465. GLctx.uniform4iv(GL.uniforms[location], HEAP32, value >> 2, count * 4);
  13466. return;
  13467. }
  13468. GLctx.uniform4iv(GL.uniforms[location], HEAP32.subarray(value >> 2, value + count * 16 >> 2));
  13469. }
  13470. function _glUniform4uiv(location, count, value) {
  13471. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13472. GLctx.uniform4uiv(GL.uniforms[location], HEAPU32, value >> 2, count * 4);
  13473. } else {
  13474. GLctx.uniform4uiv(GL.uniforms[location], HEAPU32.subarray(value >> 2, value + count * 16 >> 2));
  13475. }
  13476. }
  13477. function _glUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding) {
  13478. program = GL.programs[program];
  13479. GLctx["uniformBlockBinding"](program, uniformBlockIndex, uniformBlockBinding);
  13480. }
  13481. function _glUniformMatrix3fv(location, count, transpose, value) {
  13482. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13483. GLctx.uniformMatrix3fv(GL.uniforms[location], !!transpose, HEAPF32, value >> 2, count * 9);
  13484. return;
  13485. }
  13486. var view;
  13487. if (9 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13488. view = GL.miniTempBufferViews[9 * count - 1];
  13489. for (var i = 0; i < 9 * count; i += 9) {
  13490. view[i] = HEAPF32[value + 4 * i >> 2];
  13491. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13492. view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
  13493. view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
  13494. view[i + 4] = HEAPF32[value + (4 * i + 16) >> 2];
  13495. view[i + 5] = HEAPF32[value + (4 * i + 20) >> 2];
  13496. view[i + 6] = HEAPF32[value + (4 * i + 24) >> 2];
  13497. view[i + 7] = HEAPF32[value + (4 * i + 28) >> 2];
  13498. view[i + 8] = HEAPF32[value + (4 * i + 32) >> 2];
  13499. }
  13500. } else {
  13501. view = HEAPF32.subarray(value >> 2, value + count * 36 >> 2);
  13502. }
  13503. GLctx.uniformMatrix3fv(GL.uniforms[location], !!transpose, view);
  13504. }
  13505. function _glUniformMatrix4fv(location, count, transpose, value) {
  13506. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13507. GLctx.uniformMatrix4fv(GL.uniforms[location], !!transpose, HEAPF32, value >> 2, count * 16);
  13508. return;
  13509. }
  13510. var view;
  13511. if (16 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13512. view = GL.miniTempBufferViews[16 * count - 1];
  13513. for (var i = 0; i < 16 * count; i += 16) {
  13514. view[i] = HEAPF32[value + 4 * i >> 2];
  13515. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13516. view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
  13517. view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
  13518. view[i + 4] = HEAPF32[value + (4 * i + 16) >> 2];
  13519. view[i + 5] = HEAPF32[value + (4 * i + 20) >> 2];
  13520. view[i + 6] = HEAPF32[value + (4 * i + 24) >> 2];
  13521. view[i + 7] = HEAPF32[value + (4 * i + 28) >> 2];
  13522. view[i + 8] = HEAPF32[value + (4 * i + 32) >> 2];
  13523. view[i + 9] = HEAPF32[value + (4 * i + 36) >> 2];
  13524. view[i + 10] = HEAPF32[value + (4 * i + 40) >> 2];
  13525. view[i + 11] = HEAPF32[value + (4 * i + 44) >> 2];
  13526. view[i + 12] = HEAPF32[value + (4 * i + 48) >> 2];
  13527. view[i + 13] = HEAPF32[value + (4 * i + 52) >> 2];
  13528. view[i + 14] = HEAPF32[value + (4 * i + 56) >> 2];
  13529. view[i + 15] = HEAPF32[value + (4 * i + 60) >> 2];
  13530. }
  13531. } else {
  13532. view = HEAPF32.subarray(value >> 2, value + count * 64 >> 2);
  13533. }
  13534. GLctx.uniformMatrix4fv(GL.uniforms[location], !!transpose, view);
  13535. }
  13536. function _glUnmapBuffer(target) {
  13537. if (!emscriptenWebGLValidateMapBufferTarget(target)) {
  13538. GL.recordError(1280);
  13539. err("GL_INVALID_ENUM in glUnmapBuffer");
  13540. return 0;
  13541. }
  13542. var buffer = emscriptenWebGLGetBufferBinding(target);
  13543. var mapping = GL.mappedBuffers[buffer];
  13544. if (!mapping) {
  13545. GL.recordError(1282);
  13546. Module.printError("buffer was never mapped in glUnmapBuffer");
  13547. return 0;
  13548. }
  13549. GL.mappedBuffers[buffer] = null;
  13550. if (!(mapping.access & 16)) if (GL.currentContext.supportsWebGL2EntryPoints) {
  13551. GLctx.bufferSubData(target, mapping.offset, HEAPU8, mapping.mem, mapping.length);
  13552. } else {
  13553. GLctx.bufferSubData(target, mapping.offset, HEAPU8.subarray(mapping.mem, mapping.mem + mapping.length));
  13554. }
  13555. _free(mapping.mem);
  13556. return 1;
  13557. }
  13558. function _glUseProgram(program) {
  13559. GLctx.useProgram(program ? GL.programs[program] : null);
  13560. }
  13561. function _glValidateProgram(program) {
  13562. GLctx.validateProgram(GL.programs[program]);
  13563. }
  13564. function _glVertexAttrib4f(x0, x1, x2, x3, x4) {
  13565. GLctx["vertexAttrib4f"](x0, x1, x2, x3, x4);
  13566. }
  13567. function _glVertexAttrib4fv(index, v) {
  13568. GLctx.vertexAttrib4f(index, HEAPF32[v >> 2], HEAPF32[v + 4 >> 2], HEAPF32[v + 8 >> 2], HEAPF32[v + 12 >> 2]);
  13569. }
  13570. function _glVertexAttribIPointer(index, size, type, stride, ptr) {
  13571. var cb = GL.currentContext.clientBuffers[index];
  13572. assert(cb, index);
  13573. if (!GL.currArrayBuffer) {
  13574. cb.size = size;
  13575. cb.type = type;
  13576. cb.normalized = false;
  13577. cb.stride = stride;
  13578. cb.ptr = ptr;
  13579. cb.clientside = true;
  13580. return;
  13581. }
  13582. cb.clientside = false;
  13583. GLctx.vertexAttribIPointer(index, size, type, stride, ptr);
  13584. }
  13585. function _glVertexAttribPointer(index, size, type, normalized, stride, ptr) {
  13586. GLctx.vertexAttribPointer(index, size, type, !!normalized, stride, ptr);
  13587. }
  13588. function _glViewport(x0, x1, x2, x3) {
  13589. GLctx["viewport"](x0, x1, x2, x3);
  13590. }
  13591. var ___tm_current = STATICTOP;
  13592. STATICTOP += 48;
  13593. var ___tm_timezone = allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC);
  13594. function _gmtime_r(time, tmPtr) {
  13595. var date = new Date(HEAP32[time >> 2] * 1e3);
  13596. HEAP32[tmPtr >> 2] = date.getUTCSeconds();
  13597. HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes();
  13598. HEAP32[tmPtr + 8 >> 2] = date.getUTCHours();
  13599. HEAP32[tmPtr + 12 >> 2] = date.getUTCDate();
  13600. HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth();
  13601. HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900;
  13602. HEAP32[tmPtr + 24 >> 2] = date.getUTCDay();
  13603. HEAP32[tmPtr + 36 >> 2] = 0;
  13604. HEAP32[tmPtr + 32 >> 2] = 0;
  13605. var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0);
  13606. var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0;
  13607. HEAP32[tmPtr + 28 >> 2] = yday;
  13608. HEAP32[tmPtr + 40 >> 2] = ___tm_timezone;
  13609. return tmPtr;
  13610. }
  13611. function _gmtime(time) {
  13612. return _gmtime_r(time, ___tm_current);
  13613. }
  13614. function _gotoUnity(type) {
  13615. window.location.href = "https://fangzhen.cocorobo.cn/unity?type=" + type;
  13616. }
  13617. function _inet_addr(ptr) {
  13618. var addr = __inet_pton4_raw(Pointer_stringify(ptr));
  13619. if (addr === null) {
  13620. return -1;
  13621. }
  13622. return addr;
  13623. }
  13624. var _llvm_ceil_f32 = Math_ceil;
  13625. var _llvm_ceil_f64 = Math_ceil;
  13626. function _llvm_copysign_f64(x, y) {
  13627. return y < 0 || y === 0 && 1 / y < 0 ? -Math_abs(x) : Math_abs(x);
  13628. }
  13629. function _llvm_cttz_i32(x) {
  13630. x = x | 0;
  13631. return (x ? 31 - (Math_clz32(x ^ x - 1) | 0) | 0 : 32) | 0;
  13632. }
  13633. function _llvm_exp2_f32(x) {
  13634. return Math.pow(2, x);
  13635. }
  13636. var _llvm_fabs_f32 = Math_abs;
  13637. var _llvm_fabs_f64 = Math_abs;
  13638. var _llvm_floor_f32 = Math_floor;
  13639. var _llvm_floor_f64 = Math_floor;
  13640. function _llvm_log10_f32(x) {
  13641. return Math.log(x) / Math.LN10;
  13642. }
  13643. function _llvm_log2_f32(x) {
  13644. return Math.log(x) / Math.LN2;
  13645. }
  13646. var _llvm_pow_f64 = Math_pow;
  13647. var _llvm_sqrt_f32 = Math_sqrt;
  13648. function _llvm_trap() {
  13649. abort("trap!");
  13650. }
  13651. var _llvm_trunc_f32 = Math_trunc;
  13652. function _tzset() {
  13653. if (_tzset.called) return;
  13654. _tzset.called = true;
  13655. HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60;
  13656. var currentYear = (new Date).getFullYear();
  13657. var winter = new Date(currentYear, 0, 1);
  13658. var summer = new Date(currentYear, 6, 1);
  13659. HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset());
  13660. function extractZone(date) {
  13661. var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/);
  13662. return match ? match[1] : "GMT";
  13663. }
  13664. var winterName = extractZone(winter);
  13665. var summerName = extractZone(summer);
  13666. var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL);
  13667. var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL);
  13668. if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) {
  13669. HEAP32[__get_tzname() >> 2] = winterNamePtr;
  13670. HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr;
  13671. } else {
  13672. HEAP32[__get_tzname() >> 2] = summerNamePtr;
  13673. HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr;
  13674. }
  13675. }
  13676. function _localtime_r(time, tmPtr) {
  13677. _tzset();
  13678. var date = new Date(HEAP32[time >> 2] * 1e3);
  13679. HEAP32[tmPtr >> 2] = date.getSeconds();
  13680. HEAP32[tmPtr + 4 >> 2] = date.getMinutes();
  13681. HEAP32[tmPtr + 8 >> 2] = date.getHours();
  13682. HEAP32[tmPtr + 12 >> 2] = date.getDate();
  13683. HEAP32[tmPtr + 16 >> 2] = date.getMonth();
  13684. HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900;
  13685. HEAP32[tmPtr + 24 >> 2] = date.getDay();
  13686. var start = new Date(date.getFullYear(), 0, 1);
  13687. var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0;
  13688. HEAP32[tmPtr + 28 >> 2] = yday;
  13689. HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60);
  13690. var summerOffset = (new Date(date.getFullYear(), 6, 1)).getTimezoneOffset();
  13691. var winterOffset = start.getTimezoneOffset();
  13692. var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0;
  13693. HEAP32[tmPtr + 32 >> 2] = dst;
  13694. var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2];
  13695. HEAP32[tmPtr + 40 >> 2] = zonePtr;
  13696. return tmPtr;
  13697. }
  13698. function _localtime(time) {
  13699. return _localtime_r(time, ___tm_current);
  13700. }
  13701. function _emscripten_memcpy_big(dest, src, num) {
  13702. HEAPU8.set(HEAPU8.subarray(src, src + num), dest);
  13703. return dest;
  13704. }
  13705. function _mktime(tmPtr) {
  13706. _tzset();
  13707. 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);
  13708. var dst = HEAP32[tmPtr + 32 >> 2];
  13709. var guessedOffset = date.getTimezoneOffset();
  13710. var start = new Date(date.getFullYear(), 0, 1);
  13711. var summerOffset = (new Date(date.getFullYear(), 6, 1)).getTimezoneOffset();
  13712. var winterOffset = start.getTimezoneOffset();
  13713. var dstOffset = Math.min(winterOffset, summerOffset);
  13714. if (dst < 0) {
  13715. HEAP32[tmPtr + 32 >> 2] = Number(summerOffset != winterOffset && dstOffset == guessedOffset);
  13716. } else if (dst > 0 != (dstOffset == guessedOffset)) {
  13717. var nonDstOffset = Math.max(winterOffset, summerOffset);
  13718. var trueOffset = dst > 0 ? dstOffset : nonDstOffset;
  13719. date.setTime(date.getTime() + (trueOffset - guessedOffset) * 6e4);
  13720. }
  13721. HEAP32[tmPtr + 24 >> 2] = date.getDay();
  13722. var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0;
  13723. HEAP32[tmPtr + 28 >> 2] = yday;
  13724. return date.getTime() / 1e3 | 0;
  13725. }
  13726. function _usleep(useconds) {
  13727. var msec = useconds / 1e3;
  13728. if ((ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) {
  13729. var start = self["performance"]["now"]();
  13730. while (self["performance"]["now"]() - start < msec) {}
  13731. } else {
  13732. var start = Date.now();
  13733. while (Date.now() - start < msec) {}
  13734. }
  13735. return 0;
  13736. }
  13737. function _nanosleep(rqtp, rmtp) {
  13738. var seconds = HEAP32[rqtp >> 2];
  13739. var nanoseconds = HEAP32[rqtp + 4 >> 2];
  13740. if (rmtp !== 0) {
  13741. HEAP32[rmtp >> 2] = 0;
  13742. HEAP32[rmtp + 4 >> 2] = 0;
  13743. }
  13744. return _usleep(seconds * 1e6 + nanoseconds / 1e3);
  13745. }
  13746. function _pthread_cond_destroy() {
  13747. return 0;
  13748. }
  13749. function _pthread_cond_init() {
  13750. return 0;
  13751. }
  13752. function _pthread_cond_timedwait() {
  13753. return 0;
  13754. }
  13755. function _pthread_cond_wait() {
  13756. return 0;
  13757. }
  13758. var PTHREAD_SPECIFIC = {};
  13759. function _pthread_getspecific(key) {
  13760. return PTHREAD_SPECIFIC[key] || 0;
  13761. }
  13762. var PTHREAD_SPECIFIC_NEXT_KEY = 1;
  13763. function _pthread_key_create(key, destructor) {
  13764. if (key == 0) {
  13765. return ERRNO_CODES.EINVAL;
  13766. }
  13767. HEAP32[key >> 2] = PTHREAD_SPECIFIC_NEXT_KEY;
  13768. PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY] = 0;
  13769. PTHREAD_SPECIFIC_NEXT_KEY++;
  13770. return 0;
  13771. }
  13772. function _pthread_key_delete(key) {
  13773. if (key in PTHREAD_SPECIFIC) {
  13774. delete PTHREAD_SPECIFIC[key];
  13775. return 0;
  13776. }
  13777. return ERRNO_CODES.EINVAL;
  13778. }
  13779. function _pthread_mutex_destroy() {}
  13780. function _pthread_mutex_init() {}
  13781. function _pthread_mutexattr_destroy() {}
  13782. function _pthread_mutexattr_init() {}
  13783. function _pthread_mutexattr_setprotocol() {}
  13784. function _pthread_mutexattr_settype() {}
  13785. function _pthread_once(ptr, func) {
  13786. if (!_pthread_once.seen) _pthread_once.seen = {};
  13787. if (ptr in _pthread_once.seen) return;
  13788. Module["dynCall_v"](func);
  13789. _pthread_once.seen[ptr] = 1;
  13790. }
  13791. function _pthread_setspecific(key, value) {
  13792. if (!(key in PTHREAD_SPECIFIC)) {
  13793. return ERRNO_CODES.EINVAL;
  13794. }
  13795. PTHREAD_SPECIFIC[key] = value;
  13796. return 0;
  13797. }
  13798. function _sched_yield() {
  13799. return 0;
  13800. }
  13801. function _setenv(envname, envval, overwrite) {
  13802. if (envname === 0) {
  13803. ___setErrNo(ERRNO_CODES.EINVAL);
  13804. return -1;
  13805. }
  13806. var name = Pointer_stringify(envname);
  13807. var val = Pointer_stringify(envval);
  13808. if (name === "" || name.indexOf("=") !== -1) {
  13809. ___setErrNo(ERRNO_CODES.EINVAL);
  13810. return -1;
  13811. }
  13812. if (ENV.hasOwnProperty(name) && !overwrite) return 0;
  13813. ENV[name] = val;
  13814. ___buildEnvironment(__get_environ());
  13815. return 0;
  13816. }
  13817. function _sigaction(signum, act, oldact) {
  13818. err("Calling stub instead of sigaction()");
  13819. return 0;
  13820. }
  13821. function _sigemptyset(set) {
  13822. HEAP32[set >> 2] = 0;
  13823. return 0;
  13824. }
  13825. function __isLeapYear(year) {
  13826. return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
  13827. }
  13828. function __arraySum(array, index) {
  13829. var sum = 0;
  13830. for (var i = 0; i <= index; sum += array[i++]) ;
  13831. return sum;
  13832. }
  13833. var __MONTH_DAYS_LEAP = [ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ];
  13834. var __MONTH_DAYS_REGULAR = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ];
  13835. function __addDays(date, days) {
  13836. var newDate = new Date(date.getTime());
  13837. while (days > 0) {
  13838. var leap = __isLeapYear(newDate.getFullYear());
  13839. var currentMonth = newDate.getMonth();
  13840. var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth];
  13841. if (days > daysInCurrentMonth - newDate.getDate()) {
  13842. days -= daysInCurrentMonth - newDate.getDate() + 1;
  13843. newDate.setDate(1);
  13844. if (currentMonth < 11) {
  13845. newDate.setMonth(currentMonth + 1);
  13846. } else {
  13847. newDate.setMonth(0);
  13848. newDate.setFullYear(newDate.getFullYear() + 1);
  13849. }
  13850. } else {
  13851. newDate.setDate(newDate.getDate() + days);
  13852. return newDate;
  13853. }
  13854. }
  13855. return newDate;
  13856. }
  13857. function _strftime(s, maxsize, format, tm) {
  13858. var tm_zone = HEAP32[tm + 40 >> 2];
  13859. var date = {
  13860. tm_sec: HEAP32[tm >> 2],
  13861. tm_min: HEAP32[tm + 4 >> 2],
  13862. tm_hour: HEAP32[tm + 8 >> 2],
  13863. tm_mday: HEAP32[tm + 12 >> 2],
  13864. tm_mon: HEAP32[tm + 16 >> 2],
  13865. tm_year: HEAP32[tm + 20 >> 2],
  13866. tm_wday: HEAP32[tm + 24 >> 2],
  13867. tm_yday: HEAP32[tm + 28 >> 2],
  13868. tm_isdst: HEAP32[tm + 32 >> 2],
  13869. tm_gmtoff: HEAP32[tm + 36 >> 2],
  13870. tm_zone: tm_zone ? Pointer_stringify(tm_zone) : ""
  13871. };
  13872. var pattern = Pointer_stringify(format);
  13873. var EXPANSION_RULES_1 = {
  13874. "%c": "%a %b %d %H:%M:%S %Y",
  13875. "%D": "%m/%d/%y",
  13876. "%F": "%Y-%m-%d",
  13877. "%h": "%b",
  13878. "%r": "%I:%M:%S %p",
  13879. "%R": "%H:%M",
  13880. "%T": "%H:%M:%S",
  13881. "%x": "%m/%d/%y",
  13882. "%X": "%H:%M:%S"
  13883. };
  13884. for (var rule in EXPANSION_RULES_1) {
  13885. pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]);
  13886. }
  13887. var WEEKDAYS = [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ];
  13888. var MONTHS = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ];
  13889. function leadingSomething(value, digits, character) {
  13890. var str = typeof value === "number" ? value.toString() : value || "";
  13891. while (str.length < digits) {
  13892. str = character[0] + str;
  13893. }
  13894. return str;
  13895. }
  13896. function leadingNulls(value, digits) {
  13897. return leadingSomething(value, digits, "0");
  13898. }
  13899. function compareByDay(date1, date2) {
  13900. function sgn(value) {
  13901. return value < 0 ? -1 : value > 0 ? 1 : 0;
  13902. }
  13903. var compare;
  13904. if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) {
  13905. if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) {
  13906. compare = sgn(date1.getDate() - date2.getDate());
  13907. }
  13908. }
  13909. return compare;
  13910. }
  13911. function getFirstWeekStartDate(janFourth) {
  13912. switch (janFourth.getDay()) {
  13913. case 0:
  13914. return new Date(janFourth.getFullYear() - 1, 11, 29);
  13915. case 1:
  13916. return janFourth;
  13917. case 2:
  13918. return new Date(janFourth.getFullYear(), 0, 3);
  13919. case 3:
  13920. return new Date(janFourth.getFullYear(), 0, 2);
  13921. case 4:
  13922. return new Date(janFourth.getFullYear(), 0, 1);
  13923. case 5:
  13924. return new Date(janFourth.getFullYear() - 1, 11, 31);
  13925. case 6:
  13926. return new Date(janFourth.getFullYear() - 1, 11, 30);
  13927. }
  13928. }
  13929. function getWeekBasedYear(date) {
  13930. var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday);
  13931. var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4);
  13932. var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4);
  13933. var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);
  13934. var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear);
  13935. if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) {
  13936. if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) {
  13937. return thisDate.getFullYear() + 1;
  13938. } else {
  13939. return thisDate.getFullYear();
  13940. }
  13941. } else {
  13942. return thisDate.getFullYear() - 1;
  13943. }
  13944. }
  13945. var EXPANSION_RULES_2 = {
  13946. "%a": (function(date) {
  13947. return WEEKDAYS[date.tm_wday].substring(0, 3);
  13948. }),
  13949. "%A": (function(date) {
  13950. return WEEKDAYS[date.tm_wday];
  13951. }),
  13952. "%b": (function(date) {
  13953. return MONTHS[date.tm_mon].substring(0, 3);
  13954. }),
  13955. "%B": (function(date) {
  13956. return MONTHS[date.tm_mon];
  13957. }),
  13958. "%C": (function(date) {
  13959. var year = date.tm_year + 1900;
  13960. return leadingNulls(year / 100 | 0, 2);
  13961. }),
  13962. "%d": (function(date) {
  13963. return leadingNulls(date.tm_mday, 2);
  13964. }),
  13965. "%e": (function(date) {
  13966. return leadingSomething(date.tm_mday, 2, " ");
  13967. }),
  13968. "%g": (function(date) {
  13969. return getWeekBasedYear(date).toString().substring(2);
  13970. }),
  13971. "%G": (function(date) {
  13972. return getWeekBasedYear(date);
  13973. }),
  13974. "%H": (function(date) {
  13975. return leadingNulls(date.tm_hour, 2);
  13976. }),
  13977. "%I": (function(date) {
  13978. var twelveHour = date.tm_hour;
  13979. if (twelveHour == 0) twelveHour = 12; else if (twelveHour > 12) twelveHour -= 12;
  13980. return leadingNulls(twelveHour, 2);
  13981. }),
  13982. "%j": (function(date) {
  13983. return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3);
  13984. }),
  13985. "%m": (function(date) {
  13986. return leadingNulls(date.tm_mon + 1, 2);
  13987. }),
  13988. "%M": (function(date) {
  13989. return leadingNulls(date.tm_min, 2);
  13990. }),
  13991. "%n": (function() {
  13992. return "\n";
  13993. }),
  13994. "%p": (function(date) {
  13995. if (date.tm_hour >= 0 && date.tm_hour < 12) {
  13996. return "AM";
  13997. } else {
  13998. return "PM";
  13999. }
  14000. }),
  14001. "%S": (function(date) {
  14002. return leadingNulls(date.tm_sec, 2);
  14003. }),
  14004. "%t": (function() {
  14005. return "\t";
  14006. }),
  14007. "%u": (function(date) {
  14008. var day = new Date(date.tm_year + 1900, date.tm_mon + 1, date.tm_mday, 0, 0, 0, 0);
  14009. return day.getDay() || 7;
  14010. }),
  14011. "%U": (function(date) {
  14012. var janFirst = new Date(date.tm_year + 1900, 0, 1);
  14013. var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay());
  14014. var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday);
  14015. if (compareByDay(firstSunday, endDate) < 0) {
  14016. var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31;
  14017. var firstSundayUntilEndJanuary = 31 - firstSunday.getDate();
  14018. var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate();
  14019. return leadingNulls(Math.ceil(days / 7), 2);
  14020. }
  14021. return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00";
  14022. }),
  14023. "%V": (function(date) {
  14024. var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4);
  14025. var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4);
  14026. var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);
  14027. var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear);
  14028. var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday);
  14029. if (compareByDay(endDate, firstWeekStartThisYear) < 0) {
  14030. return "53";
  14031. }
  14032. if (compareByDay(firstWeekStartNextYear, endDate) <= 0) {
  14033. return "01";
  14034. }
  14035. var daysDifference;
  14036. if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) {
  14037. daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate();
  14038. } else {
  14039. daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate();
  14040. }
  14041. return leadingNulls(Math.ceil(daysDifference / 7), 2);
  14042. }),
  14043. "%w": (function(date) {
  14044. var day = new Date(date.tm_year + 1900, date.tm_mon + 1, date.tm_mday, 0, 0, 0, 0);
  14045. return day.getDay();
  14046. }),
  14047. "%W": (function(date) {
  14048. var janFirst = new Date(date.tm_year, 0, 1);
  14049. var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1);
  14050. var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday);
  14051. if (compareByDay(firstMonday, endDate) < 0) {
  14052. var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31;
  14053. var firstMondayUntilEndJanuary = 31 - firstMonday.getDate();
  14054. var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate();
  14055. return leadingNulls(Math.ceil(days / 7), 2);
  14056. }
  14057. return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00";
  14058. }),
  14059. "%y": (function(date) {
  14060. return (date.tm_year + 1900).toString().substring(2);
  14061. }),
  14062. "%Y": (function(date) {
  14063. return date.tm_year + 1900;
  14064. }),
  14065. "%z": (function(date) {
  14066. var off = date.tm_gmtoff;
  14067. var ahead = off >= 0;
  14068. off = Math.abs(off) / 60;
  14069. off = off / 60 * 100 + off % 60;
  14070. return (ahead ? "+" : "-") + String("0000" + off).slice(-4);
  14071. }),
  14072. "%Z": (function(date) {
  14073. return date.tm_zone;
  14074. }),
  14075. "%%": (function() {
  14076. return "%";
  14077. })
  14078. };
  14079. for (var rule in EXPANSION_RULES_2) {
  14080. if (pattern.indexOf(rule) >= 0) {
  14081. pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date));
  14082. }
  14083. }
  14084. var bytes = intArrayFromString(pattern, false);
  14085. if (bytes.length > maxsize) {
  14086. return 0;
  14087. }
  14088. writeArrayToMemory(bytes, s);
  14089. return bytes.length - 1;
  14090. }
  14091. function _sysconf(name) {
  14092. switch (name) {
  14093. case 30:
  14094. return PAGE_SIZE;
  14095. case 85:
  14096. var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536;
  14097. return maxHeapSize / PAGE_SIZE;
  14098. case 132:
  14099. case 133:
  14100. case 12:
  14101. case 137:
  14102. case 138:
  14103. case 15:
  14104. case 235:
  14105. case 16:
  14106. case 17:
  14107. case 18:
  14108. case 19:
  14109. case 20:
  14110. case 149:
  14111. case 13:
  14112. case 10:
  14113. case 236:
  14114. case 153:
  14115. case 9:
  14116. case 21:
  14117. case 22:
  14118. case 159:
  14119. case 154:
  14120. case 14:
  14121. case 77:
  14122. case 78:
  14123. case 139:
  14124. case 80:
  14125. case 81:
  14126. case 82:
  14127. case 68:
  14128. case 67:
  14129. case 164:
  14130. case 11:
  14131. case 29:
  14132. case 47:
  14133. case 48:
  14134. case 95:
  14135. case 52:
  14136. case 51:
  14137. case 46:
  14138. return 200809;
  14139. case 79:
  14140. return 0;
  14141. case 27:
  14142. case 246:
  14143. case 127:
  14144. case 128:
  14145. case 23:
  14146. case 24:
  14147. case 160:
  14148. case 161:
  14149. case 181:
  14150. case 182:
  14151. case 242:
  14152. case 183:
  14153. case 184:
  14154. case 243:
  14155. case 244:
  14156. case 245:
  14157. case 165:
  14158. case 178:
  14159. case 179:
  14160. case 49:
  14161. case 50:
  14162. case 168:
  14163. case 169:
  14164. case 175:
  14165. case 170:
  14166. case 171:
  14167. case 172:
  14168. case 97:
  14169. case 76:
  14170. case 32:
  14171. case 173:
  14172. case 35:
  14173. return -1;
  14174. case 176:
  14175. case 177:
  14176. case 7:
  14177. case 155:
  14178. case 8:
  14179. case 157:
  14180. case 125:
  14181. case 126:
  14182. case 92:
  14183. case 93:
  14184. case 129:
  14185. case 130:
  14186. case 131:
  14187. case 94:
  14188. case 91:
  14189. return 1;
  14190. case 74:
  14191. case 60:
  14192. case 69:
  14193. case 70:
  14194. case 4:
  14195. return 1024;
  14196. case 31:
  14197. case 42:
  14198. case 72:
  14199. return 32;
  14200. case 87:
  14201. case 26:
  14202. case 33:
  14203. return 2147483647;
  14204. case 34:
  14205. case 1:
  14206. return 47839;
  14207. case 38:
  14208. case 36:
  14209. return 99;
  14210. case 43:
  14211. case 37:
  14212. return 2048;
  14213. case 0:
  14214. return 2097152;
  14215. case 3:
  14216. return 65536;
  14217. case 28:
  14218. return 32768;
  14219. case 44:
  14220. return 32767;
  14221. case 75:
  14222. return 16384;
  14223. case 39:
  14224. return 1e3;
  14225. case 89:
  14226. return 700;
  14227. case 71:
  14228. return 256;
  14229. case 40:
  14230. return 255;
  14231. case 2:
  14232. return 100;
  14233. case 180:
  14234. return 64;
  14235. case 25:
  14236. return 20;
  14237. case 5:
  14238. return 16;
  14239. case 6:
  14240. return 6;
  14241. case 73:
  14242. return 4;
  14243. case 84:
  14244. {
  14245. if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1;
  14246. return 1;
  14247. }
  14248. }
  14249. ___setErrNo(ERRNO_CODES.EINVAL);
  14250. return -1;
  14251. }
  14252. function _time(ptr) {
  14253. var ret = Date.now() / 1e3 | 0;
  14254. if (ptr) {
  14255. HEAP32[ptr >> 2] = ret;
  14256. }
  14257. return ret;
  14258. }
  14259. function _unsetenv(name) {
  14260. if (name === 0) {
  14261. ___setErrNo(ERRNO_CODES.EINVAL);
  14262. return -1;
  14263. }
  14264. name = Pointer_stringify(name);
  14265. if (name === "" || name.indexOf("=") !== -1) {
  14266. ___setErrNo(ERRNO_CODES.EINVAL);
  14267. return -1;
  14268. }
  14269. if (ENV.hasOwnProperty(name)) {
  14270. delete ENV[name];
  14271. ___buildEnvironment(__get_environ());
  14272. }
  14273. return 0;
  14274. }
  14275. function _utime(path, times) {
  14276. var time;
  14277. if (times) {
  14278. var offset = 4;
  14279. time = HEAP32[times + offset >> 2];
  14280. time *= 1e3;
  14281. } else {
  14282. time = Date.now();
  14283. }
  14284. path = Pointer_stringify(path);
  14285. try {
  14286. FS.utime(path, time, time);
  14287. return 0;
  14288. } catch (e) {
  14289. FS.handleFSError(e);
  14290. return -1;
  14291. }
  14292. }
  14293. FS.staticInit();
  14294. __ATINIT__.unshift((function() {
  14295. if (!Module["noFSInit"] && !FS.init.initialized) FS.init();
  14296. }));
  14297. __ATMAIN__.push((function() {
  14298. FS.ignorePermissions = false;
  14299. }));
  14300. __ATEXIT__.push((function() {
  14301. FS.quit();
  14302. }));
  14303. Module["FS_createPath"] = FS.createPath;
  14304. Module["FS_createDataFile"] = FS.createDataFile;
  14305. __ATINIT__.unshift((function() {
  14306. TTY.init();
  14307. }));
  14308. __ATEXIT__.push((function() {
  14309. TTY.shutdown();
  14310. }));
  14311. if (ENVIRONMENT_IS_NODE) {
  14312. var fs = require("fs");
  14313. var NODEJS_PATH = require("path");
  14314. NODEFS.staticInit();
  14315. }
  14316. __ATINIT__.push((function() {
  14317. SOCKFS.root = FS.mount(SOCKFS, {}, null);
  14318. }));
  14319. if (ENVIRONMENT_IS_NODE) {
  14320. _emscripten_get_now = function _emscripten_get_now_actual() {
  14321. var t = process["hrtime"]();
  14322. return t[0] * 1e3 + t[1] / 1e6;
  14323. };
  14324. } else if (typeof dateNow !== "undefined") {
  14325. _emscripten_get_now = dateNow;
  14326. } else if (typeof self === "object" && self["performance"] && typeof self["performance"]["now"] === "function") {
  14327. _emscripten_get_now = (function() {
  14328. return self["performance"]["now"]();
  14329. });
  14330. } else if (typeof performance === "object" && typeof performance["now"] === "function") {
  14331. _emscripten_get_now = (function() {
  14332. return performance["now"]();
  14333. });
  14334. } else {
  14335. _emscripten_get_now = Date.now;
  14336. }
  14337. Module["requestFullScreen"] = function Module_requestFullScreen(lockPointer, resizeCanvas, vrDevice) {
  14338. err("Module.requestFullScreen is deprecated. Please call Module.requestFullscreen instead.");
  14339. Module["requestFullScreen"] = Module["requestFullscreen"];
  14340. Browser.requestFullScreen(lockPointer, resizeCanvas, vrDevice);
  14341. };
  14342. Module["requestFullscreen"] = function Module_requestFullscreen(lockPointer, resizeCanvas, vrDevice) {
  14343. Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice);
  14344. };
  14345. Module["requestAnimationFrame"] = function Module_requestAnimationFrame(func) {
  14346. Browser.requestAnimationFrame(func);
  14347. };
  14348. Module["setCanvasSize"] = function Module_setCanvasSize(width, height, noUpdates) {
  14349. Browser.setCanvasSize(width, height, noUpdates);
  14350. };
  14351. Module["pauseMainLoop"] = function Module_pauseMainLoop() {
  14352. Browser.mainLoop.pause();
  14353. };
  14354. Module["resumeMainLoop"] = function Module_resumeMainLoop() {
  14355. Browser.mainLoop.resume();
  14356. };
  14357. Module["getUserMedia"] = function Module_getUserMedia() {
  14358. Browser.getUserMedia();
  14359. };
  14360. Module["createContext"] = function Module_createContext(canvas, useWebGL, setInModule, webGLContextAttributes) {
  14361. return Browser.createContext(canvas, useWebGL, setInModule, webGLContextAttributes);
  14362. };
  14363. JSEvents.staticInit();
  14364. var GLctx;
  14365. GL.init();
  14366. DYNAMICTOP_PTR = staticAlloc(4);
  14367. STACK_BASE = STACKTOP = alignMemory(STATICTOP);
  14368. STACK_MAX = STACK_BASE + TOTAL_STACK;
  14369. DYNAMIC_BASE = alignMemory(STACK_MAX);
  14370. HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE;
  14371. staticSealed = true;
  14372. assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack");
  14373. function intArrayFromString(stringy, dontAddNull, length) {
  14374. var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1;
  14375. var u8array = new Array(len);
  14376. var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length);
  14377. if (dontAddNull) u8array.length = numBytesWritten;
  14378. return u8array;
  14379. }
  14380. function nullFunc_dddi(x) {
  14381. 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)");
  14382. err("Build with ASSERTIONS=2 for more info.");
  14383. abort(x);
  14384. }
  14385. function nullFunc_ddi(x) {
  14386. 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)");
  14387. err("Build with ASSERTIONS=2 for more info.");
  14388. abort(x);
  14389. }
  14390. function nullFunc_dfi(x) {
  14391. 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)");
  14392. err("Build with ASSERTIONS=2 for more info.");
  14393. abort(x);
  14394. }
  14395. function nullFunc_di(x) {
  14396. 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)");
  14397. err("Build with ASSERTIONS=2 for more info.");
  14398. abort(x);
  14399. }
  14400. function nullFunc_diddi(x) {
  14401. 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)");
  14402. err("Build with ASSERTIONS=2 for more info.");
  14403. abort(x);
  14404. }
  14405. function nullFunc_didi(x) {
  14406. 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)");
  14407. err("Build with ASSERTIONS=2 for more info.");
  14408. abort(x);
  14409. }
  14410. function nullFunc_dii(x) {
  14411. 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)");
  14412. err("Build with ASSERTIONS=2 for more info.");
  14413. abort(x);
  14414. }
  14415. function nullFunc_diii(x) {
  14416. 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)");
  14417. err("Build with ASSERTIONS=2 for more info.");
  14418. abort(x);
  14419. }
  14420. function nullFunc_diiii(x) {
  14421. 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)");
  14422. err("Build with ASSERTIONS=2 for more info.");
  14423. abort(x);
  14424. }
  14425. function nullFunc_dji(x) {
  14426. 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)");
  14427. err("Build with ASSERTIONS=2 for more info.");
  14428. abort(x);
  14429. }
  14430. function nullFunc_f(x) {
  14431. 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)");
  14432. err("Build with ASSERTIONS=2 for more info.");
  14433. abort(x);
  14434. }
  14435. function nullFunc_fdi(x) {
  14436. 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)");
  14437. err("Build with ASSERTIONS=2 for more info.");
  14438. abort(x);
  14439. }
  14440. function nullFunc_ff(x) {
  14441. 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)");
  14442. err("Build with ASSERTIONS=2 for more info.");
  14443. abort(x);
  14444. }
  14445. function nullFunc_fff(x) {
  14446. 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)");
  14447. err("Build with ASSERTIONS=2 for more info.");
  14448. abort(x);
  14449. }
  14450. function nullFunc_ffffi(x) {
  14451. 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)");
  14452. err("Build with ASSERTIONS=2 for more info.");
  14453. abort(x);
  14454. }
  14455. function nullFunc_fffi(x) {
  14456. 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)");
  14457. err("Build with ASSERTIONS=2 for more info.");
  14458. abort(x);
  14459. }
  14460. function nullFunc_fffifffi(x) {
  14461. 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)");
  14462. err("Build with ASSERTIONS=2 for more info.");
  14463. abort(x);
  14464. }
  14465. function nullFunc_ffi(x) {
  14466. 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)");
  14467. err("Build with ASSERTIONS=2 for more info.");
  14468. abort(x);
  14469. }
  14470. function nullFunc_fi(x) {
  14471. 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)");
  14472. err("Build with ASSERTIONS=2 for more info.");
  14473. abort(x);
  14474. }
  14475. function nullFunc_fif(x) {
  14476. 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)");
  14477. err("Build with ASSERTIONS=2 for more info.");
  14478. abort(x);
  14479. }
  14480. function nullFunc_fiff(x) {
  14481. 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)");
  14482. err("Build with ASSERTIONS=2 for more info.");
  14483. abort(x);
  14484. }
  14485. function nullFunc_fifffi(x) {
  14486. 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)");
  14487. err("Build with ASSERTIONS=2 for more info.");
  14488. abort(x);
  14489. }
  14490. function nullFunc_fiffi(x) {
  14491. 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)");
  14492. err("Build with ASSERTIONS=2 for more info.");
  14493. abort(x);
  14494. }
  14495. function nullFunc_fifi(x) {
  14496. 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)");
  14497. err("Build with ASSERTIONS=2 for more info.");
  14498. abort(x);
  14499. }
  14500. function nullFunc_fifii(x) {
  14501. 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)");
  14502. err("Build with ASSERTIONS=2 for more info.");
  14503. abort(x);
  14504. }
  14505. function nullFunc_fii(x) {
  14506. 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)");
  14507. err("Build with ASSERTIONS=2 for more info.");
  14508. abort(x);
  14509. }
  14510. function nullFunc_fiif(x) {
  14511. err("Invalid function pointer called with signature 'fiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14512. err("Build with ASSERTIONS=2 for more info.");
  14513. abort(x);
  14514. }
  14515. function nullFunc_fiifi(x) {
  14516. 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)");
  14517. err("Build with ASSERTIONS=2 for more info.");
  14518. abort(x);
  14519. }
  14520. function nullFunc_fiifii(x) {
  14521. 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)");
  14522. err("Build with ASSERTIONS=2 for more info.");
  14523. abort(x);
  14524. }
  14525. function nullFunc_fiii(x) {
  14526. 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)");
  14527. err("Build with ASSERTIONS=2 for more info.");
  14528. abort(x);
  14529. }
  14530. function nullFunc_fiiii(x) {
  14531. 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)");
  14532. err("Build with ASSERTIONS=2 for more info.");
  14533. abort(x);
  14534. }
  14535. function nullFunc_fiiiiiifiifif(x) {
  14536. 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)");
  14537. err("Build with ASSERTIONS=2 for more info.");
  14538. abort(x);
  14539. }
  14540. function nullFunc_fiiiiiifiiiif(x) {
  14541. 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)");
  14542. err("Build with ASSERTIONS=2 for more info.");
  14543. abort(x);
  14544. }
  14545. function nullFunc_fji(x) {
  14546. 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)");
  14547. err("Build with ASSERTIONS=2 for more info.");
  14548. abort(x);
  14549. }
  14550. function nullFunc_i(x) {
  14551. 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)");
  14552. err("Build with ASSERTIONS=2 for more info.");
  14553. abort(x);
  14554. }
  14555. function nullFunc_idi(x) {
  14556. 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)");
  14557. err("Build with ASSERTIONS=2 for more info.");
  14558. abort(x);
  14559. }
  14560. function nullFunc_idiii(x) {
  14561. 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)");
  14562. err("Build with ASSERTIONS=2 for more info.");
  14563. abort(x);
  14564. }
  14565. function nullFunc_ifffi(x) {
  14566. 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)");
  14567. err("Build with ASSERTIONS=2 for more info.");
  14568. abort(x);
  14569. }
  14570. function nullFunc_iffi(x) {
  14571. 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)");
  14572. err("Build with ASSERTIONS=2 for more info.");
  14573. abort(x);
  14574. }
  14575. function nullFunc_ifi(x) {
  14576. 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)");
  14577. err("Build with ASSERTIONS=2 for more info.");
  14578. abort(x);
  14579. }
  14580. function nullFunc_ifiii(x) {
  14581. 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)");
  14582. err("Build with ASSERTIONS=2 for more info.");
  14583. abort(x);
  14584. }
  14585. function nullFunc_ii(x) {
  14586. 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)");
  14587. err("Build with ASSERTIONS=2 for more info.");
  14588. abort(x);
  14589. }
  14590. function nullFunc_iidi(x) {
  14591. 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)");
  14592. err("Build with ASSERTIONS=2 for more info.");
  14593. abort(x);
  14594. }
  14595. function nullFunc_iidii(x) {
  14596. 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)");
  14597. err("Build with ASSERTIONS=2 for more info.");
  14598. abort(x);
  14599. }
  14600. function nullFunc_iif(x) {
  14601. 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)");
  14602. err("Build with ASSERTIONS=2 for more info.");
  14603. abort(x);
  14604. }
  14605. function nullFunc_iifff(x) {
  14606. 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)");
  14607. err("Build with ASSERTIONS=2 for more info.");
  14608. abort(x);
  14609. }
  14610. function nullFunc_iifffi(x) {
  14611. 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)");
  14612. err("Build with ASSERTIONS=2 for more info.");
  14613. abort(x);
  14614. }
  14615. function nullFunc_iiffi(x) {
  14616. 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)");
  14617. err("Build with ASSERTIONS=2 for more info.");
  14618. abort(x);
  14619. }
  14620. function nullFunc_iifi(x) {
  14621. 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)");
  14622. err("Build with ASSERTIONS=2 for more info.");
  14623. abort(x);
  14624. }
  14625. function nullFunc_iifii(x) {
  14626. 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)");
  14627. err("Build with ASSERTIONS=2 for more info.");
  14628. abort(x);
  14629. }
  14630. function nullFunc_iifiii(x) {
  14631. 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)");
  14632. err("Build with ASSERTIONS=2 for more info.");
  14633. abort(x);
  14634. }
  14635. function nullFunc_iifiiiijii(x) {
  14636. err("Invalid function pointer called with signature 'iifiiiijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14637. err("Build with ASSERTIONS=2 for more info.");
  14638. abort(x);
  14639. }
  14640. function nullFunc_iii(x) {
  14641. 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)");
  14642. err("Build with ASSERTIONS=2 for more info.");
  14643. abort(x);
  14644. }
  14645. function nullFunc_iiif(x) {
  14646. 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)");
  14647. err("Build with ASSERTIONS=2 for more info.");
  14648. abort(x);
  14649. }
  14650. function nullFunc_iiiff(x) {
  14651. err("Invalid function pointer called with signature 'iiiff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14652. err("Build with ASSERTIONS=2 for more info.");
  14653. abort(x);
  14654. }
  14655. function nullFunc_iiifi(x) {
  14656. 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)");
  14657. err("Build with ASSERTIONS=2 for more info.");
  14658. abort(x);
  14659. }
  14660. function nullFunc_iiifii(x) {
  14661. 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)");
  14662. err("Build with ASSERTIONS=2 for more info.");
  14663. abort(x);
  14664. }
  14665. function nullFunc_iiifiii(x) {
  14666. 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)");
  14667. err("Build with ASSERTIONS=2 for more info.");
  14668. abort(x);
  14669. }
  14670. function nullFunc_iiifiiii(x) {
  14671. 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)");
  14672. err("Build with ASSERTIONS=2 for more info.");
  14673. abort(x);
  14674. }
  14675. function nullFunc_iiii(x) {
  14676. 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)");
  14677. err("Build with ASSERTIONS=2 for more info.");
  14678. abort(x);
  14679. }
  14680. function nullFunc_iiiifffffi(x) {
  14681. 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)");
  14682. err("Build with ASSERTIONS=2 for more info.");
  14683. abort(x);
  14684. }
  14685. function nullFunc_iiiifffffii(x) {
  14686. 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)");
  14687. err("Build with ASSERTIONS=2 for more info.");
  14688. abort(x);
  14689. }
  14690. function nullFunc_iiiifffiii(x) {
  14691. err("Invalid function pointer called with signature 'iiiifffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14692. err("Build with ASSERTIONS=2 for more info.");
  14693. abort(x);
  14694. }
  14695. function nullFunc_iiiifi(x) {
  14696. 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)");
  14697. err("Build with ASSERTIONS=2 for more info.");
  14698. abort(x);
  14699. }
  14700. function nullFunc_iiiifii(x) {
  14701. 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)");
  14702. err("Build with ASSERTIONS=2 for more info.");
  14703. abort(x);
  14704. }
  14705. function nullFunc_iiiifiii(x) {
  14706. 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)");
  14707. err("Build with ASSERTIONS=2 for more info.");
  14708. abort(x);
  14709. }
  14710. function nullFunc_iiiifiiii(x) {
  14711. 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)");
  14712. err("Build with ASSERTIONS=2 for more info.");
  14713. abort(x);
  14714. }
  14715. function nullFunc_iiiifiiiii(x) {
  14716. 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)");
  14717. err("Build with ASSERTIONS=2 for more info.");
  14718. abort(x);
  14719. }
  14720. function nullFunc_iiiii(x) {
  14721. 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)");
  14722. err("Build with ASSERTIONS=2 for more info.");
  14723. abort(x);
  14724. }
  14725. function nullFunc_iiiiifiii(x) {
  14726. 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)");
  14727. err("Build with ASSERTIONS=2 for more info.");
  14728. abort(x);
  14729. }
  14730. function nullFunc_iiiiifiiiiif(x) {
  14731. 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)");
  14732. err("Build with ASSERTIONS=2 for more info.");
  14733. abort(x);
  14734. }
  14735. function nullFunc_iiiiii(x) {
  14736. 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)");
  14737. err("Build with ASSERTIONS=2 for more info.");
  14738. abort(x);
  14739. }
  14740. function nullFunc_iiiiiifff(x) {
  14741. err("Invalid function pointer called with signature 'iiiiiifff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14742. err("Build with ASSERTIONS=2 for more info.");
  14743. abort(x);
  14744. }
  14745. function nullFunc_iiiiiifffiiifiii(x) {
  14746. 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)");
  14747. err("Build with ASSERTIONS=2 for more info.");
  14748. abort(x);
  14749. }
  14750. function nullFunc_iiiiiiffiiiiiiiiiffffiii(x) {
  14751. 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)");
  14752. err("Build with ASSERTIONS=2 for more info.");
  14753. abort(x);
  14754. }
  14755. function nullFunc_iiiiiiffiiiiiiiiiffffiiii(x) {
  14756. 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)");
  14757. err("Build with ASSERTIONS=2 for more info.");
  14758. abort(x);
  14759. }
  14760. function nullFunc_iiiiiiffiiiiiiiiiiiiiii(x) {
  14761. 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)");
  14762. err("Build with ASSERTIONS=2 for more info.");
  14763. abort(x);
  14764. }
  14765. function nullFunc_iiiiiifiif(x) {
  14766. 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)");
  14767. err("Build with ASSERTIONS=2 for more info.");
  14768. abort(x);
  14769. }
  14770. function nullFunc_iiiiiifiii(x) {
  14771. 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)");
  14772. err("Build with ASSERTIONS=2 for more info.");
  14773. abort(x);
  14774. }
  14775. function nullFunc_iiiiiii(x) {
  14776. 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)");
  14777. err("Build with ASSERTIONS=2 for more info.");
  14778. abort(x);
  14779. }
  14780. function nullFunc_iiiiiiifiif(x) {
  14781. 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)");
  14782. err("Build with ASSERTIONS=2 for more info.");
  14783. abort(x);
  14784. }
  14785. function nullFunc_iiiiiiii(x) {
  14786. 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)");
  14787. err("Build with ASSERTIONS=2 for more info.");
  14788. abort(x);
  14789. }
  14790. function nullFunc_iiiiiiiii(x) {
  14791. 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)");
  14792. err("Build with ASSERTIONS=2 for more info.");
  14793. abort(x);
  14794. }
  14795. function nullFunc_iiiiiiiiii(x) {
  14796. 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)");
  14797. err("Build with ASSERTIONS=2 for more info.");
  14798. abort(x);
  14799. }
  14800. function nullFunc_iiiiiiiiiii(x) {
  14801. 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)");
  14802. err("Build with ASSERTIONS=2 for more info.");
  14803. abort(x);
  14804. }
  14805. function nullFunc_iiiiiiiiiiii(x) {
  14806. 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)");
  14807. err("Build with ASSERTIONS=2 for more info.");
  14808. abort(x);
  14809. }
  14810. function nullFunc_iiiiiiiiiiiii(x) {
  14811. 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)");
  14812. err("Build with ASSERTIONS=2 for more info.");
  14813. abort(x);
  14814. }
  14815. function nullFunc_iiiiiiiiiiiiii(x) {
  14816. 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)");
  14817. err("Build with ASSERTIONS=2 for more info.");
  14818. abort(x);
  14819. }
  14820. function nullFunc_iiiiiji(x) {
  14821. 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)");
  14822. err("Build with ASSERTIONS=2 for more info.");
  14823. abort(x);
  14824. }
  14825. function nullFunc_iiiij(x) {
  14826. 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)");
  14827. err("Build with ASSERTIONS=2 for more info.");
  14828. abort(x);
  14829. }
  14830. function nullFunc_iiiiji(x) {
  14831. 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)");
  14832. err("Build with ASSERTIONS=2 for more info.");
  14833. abort(x);
  14834. }
  14835. function nullFunc_iiiijii(x) {
  14836. 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)");
  14837. err("Build with ASSERTIONS=2 for more info.");
  14838. abort(x);
  14839. }
  14840. function nullFunc_iiiijiii(x) {
  14841. err("Invalid function pointer called with signature 'iiiijiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14842. err("Build with ASSERTIONS=2 for more info.");
  14843. abort(x);
  14844. }
  14845. function nullFunc_iiij(x) {
  14846. 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)");
  14847. err("Build with ASSERTIONS=2 for more info.");
  14848. abort(x);
  14849. }
  14850. function nullFunc_iiiji(x) {
  14851. 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)");
  14852. err("Build with ASSERTIONS=2 for more info.");
  14853. abort(x);
  14854. }
  14855. function nullFunc_iiijii(x) {
  14856. 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)");
  14857. err("Build with ASSERTIONS=2 for more info.");
  14858. abort(x);
  14859. }
  14860. function nullFunc_iiijiii(x) {
  14861. 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)");
  14862. err("Build with ASSERTIONS=2 for more info.");
  14863. abort(x);
  14864. }
  14865. function nullFunc_iiijji(x) {
  14866. 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)");
  14867. err("Build with ASSERTIONS=2 for more info.");
  14868. abort(x);
  14869. }
  14870. function nullFunc_iiijjiiii(x) {
  14871. err("Invalid function pointer called with signature 'iiijjiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14872. err("Build with ASSERTIONS=2 for more info.");
  14873. abort(x);
  14874. }
  14875. function nullFunc_iij(x) {
  14876. 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)");
  14877. err("Build with ASSERTIONS=2 for more info.");
  14878. abort(x);
  14879. }
  14880. function nullFunc_iiji(x) {
  14881. 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)");
  14882. err("Build with ASSERTIONS=2 for more info.");
  14883. abort(x);
  14884. }
  14885. function nullFunc_iijii(x) {
  14886. 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)");
  14887. err("Build with ASSERTIONS=2 for more info.");
  14888. abort(x);
  14889. }
  14890. function nullFunc_iijiii(x) {
  14891. 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)");
  14892. err("Build with ASSERTIONS=2 for more info.");
  14893. abort(x);
  14894. }
  14895. function nullFunc_iijji(x) {
  14896. 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)");
  14897. err("Build with ASSERTIONS=2 for more info.");
  14898. abort(x);
  14899. }
  14900. function nullFunc_iijjii(x) {
  14901. 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)");
  14902. err("Build with ASSERTIONS=2 for more info.");
  14903. abort(x);
  14904. }
  14905. function nullFunc_iijjiii(x) {
  14906. 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)");
  14907. err("Build with ASSERTIONS=2 for more info.");
  14908. abort(x);
  14909. }
  14910. function nullFunc_iijjji(x) {
  14911. 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)");
  14912. err("Build with ASSERTIONS=2 for more info.");
  14913. abort(x);
  14914. }
  14915. function nullFunc_ij(x) {
  14916. 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)");
  14917. err("Build with ASSERTIONS=2 for more info.");
  14918. abort(x);
  14919. }
  14920. function nullFunc_iji(x) {
  14921. 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)");
  14922. err("Build with ASSERTIONS=2 for more info.");
  14923. abort(x);
  14924. }
  14925. function nullFunc_ijiii(x) {
  14926. 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)");
  14927. err("Build with ASSERTIONS=2 for more info.");
  14928. abort(x);
  14929. }
  14930. function nullFunc_ijj(x) {
  14931. 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)");
  14932. err("Build with ASSERTIONS=2 for more info.");
  14933. abort(x);
  14934. }
  14935. function nullFunc_ijji(x) {
  14936. 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)");
  14937. err("Build with ASSERTIONS=2 for more info.");
  14938. abort(x);
  14939. }
  14940. function nullFunc_j(x) {
  14941. 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)");
  14942. err("Build with ASSERTIONS=2 for more info.");
  14943. abort(x);
  14944. }
  14945. function nullFunc_jdi(x) {
  14946. 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)");
  14947. err("Build with ASSERTIONS=2 for more info.");
  14948. abort(x);
  14949. }
  14950. function nullFunc_jdii(x) {
  14951. 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)");
  14952. err("Build with ASSERTIONS=2 for more info.");
  14953. abort(x);
  14954. }
  14955. function nullFunc_jfi(x) {
  14956. 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)");
  14957. err("Build with ASSERTIONS=2 for more info.");
  14958. abort(x);
  14959. }
  14960. function nullFunc_ji(x) {
  14961. 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)");
  14962. err("Build with ASSERTIONS=2 for more info.");
  14963. abort(x);
  14964. }
  14965. function nullFunc_jidi(x) {
  14966. 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)");
  14967. err("Build with ASSERTIONS=2 for more info.");
  14968. abort(x);
  14969. }
  14970. function nullFunc_jidii(x) {
  14971. 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)");
  14972. err("Build with ASSERTIONS=2 for more info.");
  14973. abort(x);
  14974. }
  14975. function nullFunc_jii(x) {
  14976. 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)");
  14977. err("Build with ASSERTIONS=2 for more info.");
  14978. abort(x);
  14979. }
  14980. function nullFunc_jiii(x) {
  14981. 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)");
  14982. err("Build with ASSERTIONS=2 for more info.");
  14983. abort(x);
  14984. }
  14985. function nullFunc_jiiii(x) {
  14986. 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)");
  14987. err("Build with ASSERTIONS=2 for more info.");
  14988. abort(x);
  14989. }
  14990. function nullFunc_jiiiii(x) {
  14991. 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)");
  14992. err("Build with ASSERTIONS=2 for more info.");
  14993. abort(x);
  14994. }
  14995. function nullFunc_jiiiiii(x) {
  14996. 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)");
  14997. err("Build with ASSERTIONS=2 for more info.");
  14998. abort(x);
  14999. }
  15000. function nullFunc_jiiiiiiiiii(x) {
  15001. 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)");
  15002. err("Build with ASSERTIONS=2 for more info.");
  15003. abort(x);
  15004. }
  15005. function nullFunc_jiiji(x) {
  15006. 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)");
  15007. err("Build with ASSERTIONS=2 for more info.");
  15008. abort(x);
  15009. }
  15010. function nullFunc_jiji(x) {
  15011. 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)");
  15012. err("Build with ASSERTIONS=2 for more info.");
  15013. abort(x);
  15014. }
  15015. function nullFunc_jijii(x) {
  15016. 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)");
  15017. err("Build with ASSERTIONS=2 for more info.");
  15018. abort(x);
  15019. }
  15020. function nullFunc_jijiii(x) {
  15021. 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)");
  15022. err("Build with ASSERTIONS=2 for more info.");
  15023. abort(x);
  15024. }
  15025. function nullFunc_jijji(x) {
  15026. 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)");
  15027. err("Build with ASSERTIONS=2 for more info.");
  15028. abort(x);
  15029. }
  15030. function nullFunc_jji(x) {
  15031. 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)");
  15032. err("Build with ASSERTIONS=2 for more info.");
  15033. abort(x);
  15034. }
  15035. function nullFunc_v(x) {
  15036. 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)");
  15037. err("Build with ASSERTIONS=2 for more info.");
  15038. abort(x);
  15039. }
  15040. function nullFunc_vd(x) {
  15041. 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)");
  15042. err("Build with ASSERTIONS=2 for more info.");
  15043. abort(x);
  15044. }
  15045. function nullFunc_vf(x) {
  15046. 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)");
  15047. err("Build with ASSERTIONS=2 for more info.");
  15048. abort(x);
  15049. }
  15050. function nullFunc_vff(x) {
  15051. 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)");
  15052. err("Build with ASSERTIONS=2 for more info.");
  15053. abort(x);
  15054. }
  15055. function nullFunc_vffff(x) {
  15056. 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)");
  15057. err("Build with ASSERTIONS=2 for more info.");
  15058. abort(x);
  15059. }
  15060. function nullFunc_vfi(x) {
  15061. 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)");
  15062. err("Build with ASSERTIONS=2 for more info.");
  15063. abort(x);
  15064. }
  15065. function nullFunc_vi(x) {
  15066. 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)");
  15067. err("Build with ASSERTIONS=2 for more info.");
  15068. abort(x);
  15069. }
  15070. function nullFunc_vid(x) {
  15071. 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)");
  15072. err("Build with ASSERTIONS=2 for more info.");
  15073. abort(x);
  15074. }
  15075. function nullFunc_vidi(x) {
  15076. 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)");
  15077. err("Build with ASSERTIONS=2 for more info.");
  15078. abort(x);
  15079. }
  15080. function nullFunc_vif(x) {
  15081. 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)");
  15082. err("Build with ASSERTIONS=2 for more info.");
  15083. abort(x);
  15084. }
  15085. function nullFunc_viff(x) {
  15086. 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)");
  15087. err("Build with ASSERTIONS=2 for more info.");
  15088. abort(x);
  15089. }
  15090. function nullFunc_vifff(x) {
  15091. 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)");
  15092. err("Build with ASSERTIONS=2 for more info.");
  15093. abort(x);
  15094. }
  15095. function nullFunc_viffff(x) {
  15096. 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)");
  15097. err("Build with ASSERTIONS=2 for more info.");
  15098. abort(x);
  15099. }
  15100. function nullFunc_viffffi(x) {
  15101. 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)");
  15102. err("Build with ASSERTIONS=2 for more info.");
  15103. abort(x);
  15104. }
  15105. function nullFunc_viffffii(x) {
  15106. 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)");
  15107. err("Build with ASSERTIONS=2 for more info.");
  15108. abort(x);
  15109. }
  15110. function nullFunc_viffffiifffiiiiif(x) {
  15111. 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)");
  15112. err("Build with ASSERTIONS=2 for more info.");
  15113. abort(x);
  15114. }
  15115. function nullFunc_viffffiii(x) {
  15116. err("Invalid function pointer called with signature 'viffffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15117. err("Build with ASSERTIONS=2 for more info.");
  15118. abort(x);
  15119. }
  15120. function nullFunc_vifffi(x) {
  15121. 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)");
  15122. err("Build with ASSERTIONS=2 for more info.");
  15123. abort(x);
  15124. }
  15125. function nullFunc_vifffii(x) {
  15126. 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)");
  15127. err("Build with ASSERTIONS=2 for more info.");
  15128. abort(x);
  15129. }
  15130. function nullFunc_viffi(x) {
  15131. 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)");
  15132. err("Build with ASSERTIONS=2 for more info.");
  15133. abort(x);
  15134. }
  15135. function nullFunc_viffii(x) {
  15136. 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)");
  15137. err("Build with ASSERTIONS=2 for more info.");
  15138. abort(x);
  15139. }
  15140. function nullFunc_viffiifffffiii(x) {
  15141. 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)");
  15142. err("Build with ASSERTIONS=2 for more info.");
  15143. abort(x);
  15144. }
  15145. function nullFunc_viffiii(x) {
  15146. 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)");
  15147. err("Build with ASSERTIONS=2 for more info.");
  15148. abort(x);
  15149. }
  15150. function nullFunc_viffiiiif(x) {
  15151. 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)");
  15152. err("Build with ASSERTIONS=2 for more info.");
  15153. abort(x);
  15154. }
  15155. function nullFunc_vifi(x) {
  15156. 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)");
  15157. err("Build with ASSERTIONS=2 for more info.");
  15158. abort(x);
  15159. }
  15160. function nullFunc_vifii(x) {
  15161. 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)");
  15162. err("Build with ASSERTIONS=2 for more info.");
  15163. abort(x);
  15164. }
  15165. function nullFunc_vifiiii(x) {
  15166. 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)");
  15167. err("Build with ASSERTIONS=2 for more info.");
  15168. abort(x);
  15169. }
  15170. function nullFunc_vifijii(x) {
  15171. err("Invalid function pointer called with signature 'vifijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15172. err("Build with ASSERTIONS=2 for more info.");
  15173. abort(x);
  15174. }
  15175. function nullFunc_vii(x) {
  15176. 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)");
  15177. err("Build with ASSERTIONS=2 for more info.");
  15178. abort(x);
  15179. }
  15180. function nullFunc_viid(x) {
  15181. 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)");
  15182. err("Build with ASSERTIONS=2 for more info.");
  15183. abort(x);
  15184. }
  15185. function nullFunc_viidi(x) {
  15186. 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)");
  15187. err("Build with ASSERTIONS=2 for more info.");
  15188. abort(x);
  15189. }
  15190. function nullFunc_viidii(x) {
  15191. 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)");
  15192. err("Build with ASSERTIONS=2 for more info.");
  15193. abort(x);
  15194. }
  15195. function nullFunc_viif(x) {
  15196. 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)");
  15197. err("Build with ASSERTIONS=2 for more info.");
  15198. abort(x);
  15199. }
  15200. function nullFunc_viiff(x) {
  15201. 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)");
  15202. err("Build with ASSERTIONS=2 for more info.");
  15203. abort(x);
  15204. }
  15205. function nullFunc_viifff(x) {
  15206. 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)");
  15207. err("Build with ASSERTIONS=2 for more info.");
  15208. abort(x);
  15209. }
  15210. function nullFunc_viifffi(x) {
  15211. 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)");
  15212. err("Build with ASSERTIONS=2 for more info.");
  15213. abort(x);
  15214. }
  15215. function nullFunc_viiffi(x) {
  15216. 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)");
  15217. err("Build with ASSERTIONS=2 for more info.");
  15218. abort(x);
  15219. }
  15220. function nullFunc_viiffii(x) {
  15221. 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)");
  15222. err("Build with ASSERTIONS=2 for more info.");
  15223. abort(x);
  15224. }
  15225. function nullFunc_viifi(x) {
  15226. 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)");
  15227. err("Build with ASSERTIONS=2 for more info.");
  15228. abort(x);
  15229. }
  15230. function nullFunc_viifii(x) {
  15231. 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)");
  15232. err("Build with ASSERTIONS=2 for more info.");
  15233. abort(x);
  15234. }
  15235. function nullFunc_viifiii(x) {
  15236. 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)");
  15237. err("Build with ASSERTIONS=2 for more info.");
  15238. abort(x);
  15239. }
  15240. function nullFunc_viifiiii(x) {
  15241. 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)");
  15242. err("Build with ASSERTIONS=2 for more info.");
  15243. abort(x);
  15244. }
  15245. function nullFunc_viii(x) {
  15246. 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)");
  15247. err("Build with ASSERTIONS=2 for more info.");
  15248. abort(x);
  15249. }
  15250. function nullFunc_viiidi(x) {
  15251. 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)");
  15252. err("Build with ASSERTIONS=2 for more info.");
  15253. abort(x);
  15254. }
  15255. function nullFunc_viiifffi(x) {
  15256. 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)");
  15257. err("Build with ASSERTIONS=2 for more info.");
  15258. abort(x);
  15259. }
  15260. function nullFunc_viiiffi(x) {
  15261. 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)");
  15262. err("Build with ASSERTIONS=2 for more info.");
  15263. abort(x);
  15264. }
  15265. function nullFunc_viiiffii(x) {
  15266. 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)");
  15267. err("Build with ASSERTIONS=2 for more info.");
  15268. abort(x);
  15269. }
  15270. function nullFunc_viiifi(x) {
  15271. 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)");
  15272. err("Build with ASSERTIONS=2 for more info.");
  15273. abort(x);
  15274. }
  15275. function nullFunc_viiifii(x) {
  15276. 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)");
  15277. err("Build with ASSERTIONS=2 for more info.");
  15278. abort(x);
  15279. }
  15280. function nullFunc_viiifiii(x) {
  15281. 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)");
  15282. err("Build with ASSERTIONS=2 for more info.");
  15283. abort(x);
  15284. }
  15285. function nullFunc_viiifiiiii(x) {
  15286. 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)");
  15287. err("Build with ASSERTIONS=2 for more info.");
  15288. abort(x);
  15289. }
  15290. function nullFunc_viiii(x) {
  15291. 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)");
  15292. err("Build with ASSERTIONS=2 for more info.");
  15293. abort(x);
  15294. }
  15295. function nullFunc_viiiif(x) {
  15296. 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)");
  15297. err("Build with ASSERTIONS=2 for more info.");
  15298. abort(x);
  15299. }
  15300. function nullFunc_viiiifii(x) {
  15301. 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)");
  15302. err("Build with ASSERTIONS=2 for more info.");
  15303. abort(x);
  15304. }
  15305. function nullFunc_viiiifiiiiif(x) {
  15306. 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)");
  15307. err("Build with ASSERTIONS=2 for more info.");
  15308. abort(x);
  15309. }
  15310. function nullFunc_viiiii(x) {
  15311. 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)");
  15312. err("Build with ASSERTIONS=2 for more info.");
  15313. abort(x);
  15314. }
  15315. function nullFunc_viiiiif(x) {
  15316. 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)");
  15317. err("Build with ASSERTIONS=2 for more info.");
  15318. abort(x);
  15319. }
  15320. function nullFunc_viiiiiffi(x) {
  15321. 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)");
  15322. err("Build with ASSERTIONS=2 for more info.");
  15323. abort(x);
  15324. }
  15325. function nullFunc_viiiiiffii(x) {
  15326. 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)");
  15327. err("Build with ASSERTIONS=2 for more info.");
  15328. abort(x);
  15329. }
  15330. function nullFunc_viiiiifi(x) {
  15331. 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)");
  15332. err("Build with ASSERTIONS=2 for more info.");
  15333. abort(x);
  15334. }
  15335. function nullFunc_viiiiii(x) {
  15336. 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)");
  15337. err("Build with ASSERTIONS=2 for more info.");
  15338. abort(x);
  15339. }
  15340. function nullFunc_viiiiiif(x) {
  15341. 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)");
  15342. err("Build with ASSERTIONS=2 for more info.");
  15343. abort(x);
  15344. }
  15345. function nullFunc_viiiiiii(x) {
  15346. 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)");
  15347. err("Build with ASSERTIONS=2 for more info.");
  15348. abort(x);
  15349. }
  15350. function nullFunc_viiiiiiifi(x) {
  15351. err("Invalid function pointer called with signature 'viiiiiiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15352. err("Build with ASSERTIONS=2 for more info.");
  15353. abort(x);
  15354. }
  15355. function nullFunc_viiiiiiii(x) {
  15356. 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)");
  15357. err("Build with ASSERTIONS=2 for more info.");
  15358. abort(x);
  15359. }
  15360. function nullFunc_viiiiiiiii(x) {
  15361. 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)");
  15362. err("Build with ASSERTIONS=2 for more info.");
  15363. abort(x);
  15364. }
  15365. function nullFunc_viiiiiiiiii(x) {
  15366. 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)");
  15367. err("Build with ASSERTIONS=2 for more info.");
  15368. abort(x);
  15369. }
  15370. function nullFunc_viiiiiiiiiii(x) {
  15371. 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)");
  15372. err("Build with ASSERTIONS=2 for more info.");
  15373. abort(x);
  15374. }
  15375. function nullFunc_viiiiiiiiiiifii(x) {
  15376. 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)");
  15377. err("Build with ASSERTIONS=2 for more info.");
  15378. abort(x);
  15379. }
  15380. function nullFunc_viiiiiiiiiiii(x) {
  15381. 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)");
  15382. err("Build with ASSERTIONS=2 for more info.");
  15383. abort(x);
  15384. }
  15385. function nullFunc_viiiiiiiiiiiiii(x) {
  15386. 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)");
  15387. err("Build with ASSERTIONS=2 for more info.");
  15388. abort(x);
  15389. }
  15390. function nullFunc_viiiiiiiiiiiiiii(x) {
  15391. 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)");
  15392. err("Build with ASSERTIONS=2 for more info.");
  15393. abort(x);
  15394. }
  15395. function nullFunc_viiiiiiiiiiiiiiiiii(x) {
  15396. 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)");
  15397. err("Build with ASSERTIONS=2 for more info.");
  15398. abort(x);
  15399. }
  15400. function nullFunc_viiiiiji(x) {
  15401. 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)");
  15402. err("Build with ASSERTIONS=2 for more info.");
  15403. abort(x);
  15404. }
  15405. function nullFunc_viiiij(x) {
  15406. 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)");
  15407. err("Build with ASSERTIONS=2 for more info.");
  15408. abort(x);
  15409. }
  15410. function nullFunc_viiiijiiii(x) {
  15411. 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)");
  15412. err("Build with ASSERTIONS=2 for more info.");
  15413. abort(x);
  15414. }
  15415. function nullFunc_viiiji(x) {
  15416. 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)");
  15417. err("Build with ASSERTIONS=2 for more info.");
  15418. abort(x);
  15419. }
  15420. function nullFunc_viiijji(x) {
  15421. 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)");
  15422. err("Build with ASSERTIONS=2 for more info.");
  15423. abort(x);
  15424. }
  15425. function nullFunc_viij(x) {
  15426. 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)");
  15427. err("Build with ASSERTIONS=2 for more info.");
  15428. abort(x);
  15429. }
  15430. function nullFunc_viiji(x) {
  15431. 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)");
  15432. err("Build with ASSERTIONS=2 for more info.");
  15433. abort(x);
  15434. }
  15435. function nullFunc_viijii(x) {
  15436. 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)");
  15437. err("Build with ASSERTIONS=2 for more info.");
  15438. abort(x);
  15439. }
  15440. function nullFunc_viijiijiii(x) {
  15441. 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)");
  15442. err("Build with ASSERTIONS=2 for more info.");
  15443. abort(x);
  15444. }
  15445. function nullFunc_viijijii(x) {
  15446. 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)");
  15447. err("Build with ASSERTIONS=2 for more info.");
  15448. abort(x);
  15449. }
  15450. function nullFunc_viijijiii(x) {
  15451. 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)");
  15452. err("Build with ASSERTIONS=2 for more info.");
  15453. abort(x);
  15454. }
  15455. function nullFunc_viijijj(x) {
  15456. 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)");
  15457. err("Build with ASSERTIONS=2 for more info.");
  15458. abort(x);
  15459. }
  15460. function nullFunc_viijj(x) {
  15461. 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)");
  15462. err("Build with ASSERTIONS=2 for more info.");
  15463. abort(x);
  15464. }
  15465. function nullFunc_viijji(x) {
  15466. 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)");
  15467. err("Build with ASSERTIONS=2 for more info.");
  15468. abort(x);
  15469. }
  15470. function nullFunc_viijjii(x) {
  15471. 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)");
  15472. err("Build with ASSERTIONS=2 for more info.");
  15473. abort(x);
  15474. }
  15475. function nullFunc_viijjiii(x) {
  15476. 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)");
  15477. err("Build with ASSERTIONS=2 for more info.");
  15478. abort(x);
  15479. }
  15480. function nullFunc_viijjji(x) {
  15481. 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)");
  15482. err("Build with ASSERTIONS=2 for more info.");
  15483. abort(x);
  15484. }
  15485. function nullFunc_vij(x) {
  15486. 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)");
  15487. err("Build with ASSERTIONS=2 for more info.");
  15488. abort(x);
  15489. }
  15490. function nullFunc_viji(x) {
  15491. 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)");
  15492. err("Build with ASSERTIONS=2 for more info.");
  15493. abort(x);
  15494. }
  15495. function nullFunc_vijii(x) {
  15496. 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)");
  15497. err("Build with ASSERTIONS=2 for more info.");
  15498. abort(x);
  15499. }
  15500. function nullFunc_vijiii(x) {
  15501. 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)");
  15502. err("Build with ASSERTIONS=2 for more info.");
  15503. abort(x);
  15504. }
  15505. function nullFunc_vijiji(x) {
  15506. 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)");
  15507. err("Build with ASSERTIONS=2 for more info.");
  15508. abort(x);
  15509. }
  15510. function nullFunc_vijijji(x) {
  15511. 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)");
  15512. err("Build with ASSERTIONS=2 for more info.");
  15513. abort(x);
  15514. }
  15515. function nullFunc_vijji(x) {
  15516. 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)");
  15517. err("Build with ASSERTIONS=2 for more info.");
  15518. abort(x);
  15519. }
  15520. function nullFunc_vijjii(x) {
  15521. 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)");
  15522. err("Build with ASSERTIONS=2 for more info.");
  15523. abort(x);
  15524. }
  15525. function nullFunc_vijjji(x) {
  15526. err("Invalid function pointer called with signature 'vijjji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15527. err("Build with ASSERTIONS=2 for more info.");
  15528. abort(x);
  15529. }
  15530. function nullFunc_vji(x) {
  15531. 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)");
  15532. err("Build with ASSERTIONS=2 for more info.");
  15533. abort(x);
  15534. }
  15535. function nullFunc_vjiiii(x) {
  15536. 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)");
  15537. err("Build with ASSERTIONS=2 for more info.");
  15538. abort(x);
  15539. }
  15540. function nullFunc_vjji(x) {
  15541. 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)");
  15542. err("Build with ASSERTIONS=2 for more info.");
  15543. abort(x);
  15544. }
  15545. Module["wasmTableSize"] = 49729;
  15546. Module["wasmMaxTableSize"] = 49729;
  15547. function invoke_dddi(index, a1, a2, a3) {
  15548. var sp = stackSave();
  15549. try {
  15550. return Module["dynCall_dddi"](index, a1, a2, a3);
  15551. } catch (e) {
  15552. stackRestore(sp);
  15553. if (typeof e !== "number" && e !== "longjmp") throw e;
  15554. Module["setThrew"](1, 0);
  15555. }
  15556. }
  15557. function invoke_ddi(index, a1, a2) {
  15558. var sp = stackSave();
  15559. try {
  15560. return Module["dynCall_ddi"](index, a1, a2);
  15561. } catch (e) {
  15562. stackRestore(sp);
  15563. if (typeof e !== "number" && e !== "longjmp") throw e;
  15564. Module["setThrew"](1, 0);
  15565. }
  15566. }
  15567. function invoke_dfi(index, a1, a2) {
  15568. var sp = stackSave();
  15569. try {
  15570. return Module["dynCall_dfi"](index, a1, a2);
  15571. } catch (e) {
  15572. stackRestore(sp);
  15573. if (typeof e !== "number" && e !== "longjmp") throw e;
  15574. Module["setThrew"](1, 0);
  15575. }
  15576. }
  15577. function invoke_di(index, a1) {
  15578. var sp = stackSave();
  15579. try {
  15580. return Module["dynCall_di"](index, a1);
  15581. } catch (e) {
  15582. stackRestore(sp);
  15583. if (typeof e !== "number" && e !== "longjmp") throw e;
  15584. Module["setThrew"](1, 0);
  15585. }
  15586. }
  15587. function invoke_diddi(index, a1, a2, a3, a4) {
  15588. var sp = stackSave();
  15589. try {
  15590. return Module["dynCall_diddi"](index, a1, a2, a3, a4);
  15591. } catch (e) {
  15592. stackRestore(sp);
  15593. if (typeof e !== "number" && e !== "longjmp") throw e;
  15594. Module["setThrew"](1, 0);
  15595. }
  15596. }
  15597. function invoke_didi(index, a1, a2, a3) {
  15598. var sp = stackSave();
  15599. try {
  15600. return Module["dynCall_didi"](index, a1, a2, a3);
  15601. } catch (e) {
  15602. stackRestore(sp);
  15603. if (typeof e !== "number" && e !== "longjmp") throw e;
  15604. Module["setThrew"](1, 0);
  15605. }
  15606. }
  15607. function invoke_dii(index, a1, a2) {
  15608. var sp = stackSave();
  15609. try {
  15610. return Module["dynCall_dii"](index, a1, a2);
  15611. } catch (e) {
  15612. stackRestore(sp);
  15613. if (typeof e !== "number" && e !== "longjmp") throw e;
  15614. Module["setThrew"](1, 0);
  15615. }
  15616. }
  15617. function invoke_diii(index, a1, a2, a3) {
  15618. var sp = stackSave();
  15619. try {
  15620. return Module["dynCall_diii"](index, a1, a2, a3);
  15621. } catch (e) {
  15622. stackRestore(sp);
  15623. if (typeof e !== "number" && e !== "longjmp") throw e;
  15624. Module["setThrew"](1, 0);
  15625. }
  15626. }
  15627. function invoke_diiii(index, a1, a2, a3, a4) {
  15628. var sp = stackSave();
  15629. try {
  15630. return Module["dynCall_diiii"](index, a1, a2, a3, a4);
  15631. } catch (e) {
  15632. stackRestore(sp);
  15633. if (typeof e !== "number" && e !== "longjmp") throw e;
  15634. Module["setThrew"](1, 0);
  15635. }
  15636. }
  15637. function invoke_dji(index, a1, a2, a3) {
  15638. var sp = stackSave();
  15639. try {
  15640. return Module["dynCall_dji"](index, a1, a2, a3);
  15641. } catch (e) {
  15642. stackRestore(sp);
  15643. if (typeof e !== "number" && e !== "longjmp") throw e;
  15644. Module["setThrew"](1, 0);
  15645. }
  15646. }
  15647. function invoke_f(index) {
  15648. var sp = stackSave();
  15649. try {
  15650. return Module["dynCall_f"](index);
  15651. } catch (e) {
  15652. stackRestore(sp);
  15653. if (typeof e !== "number" && e !== "longjmp") throw e;
  15654. Module["setThrew"](1, 0);
  15655. }
  15656. }
  15657. function invoke_fdi(index, a1, a2) {
  15658. var sp = stackSave();
  15659. try {
  15660. return Module["dynCall_fdi"](index, a1, a2);
  15661. } catch (e) {
  15662. stackRestore(sp);
  15663. if (typeof e !== "number" && e !== "longjmp") throw e;
  15664. Module["setThrew"](1, 0);
  15665. }
  15666. }
  15667. function invoke_ff(index, a1) {
  15668. var sp = stackSave();
  15669. try {
  15670. return Module["dynCall_ff"](index, a1);
  15671. } catch (e) {
  15672. stackRestore(sp);
  15673. if (typeof e !== "number" && e !== "longjmp") throw e;
  15674. Module["setThrew"](1, 0);
  15675. }
  15676. }
  15677. function invoke_fff(index, a1, a2) {
  15678. var sp = stackSave();
  15679. try {
  15680. return Module["dynCall_fff"](index, a1, a2);
  15681. } catch (e) {
  15682. stackRestore(sp);
  15683. if (typeof e !== "number" && e !== "longjmp") throw e;
  15684. Module["setThrew"](1, 0);
  15685. }
  15686. }
  15687. function invoke_ffffi(index, a1, a2, a3, a4) {
  15688. var sp = stackSave();
  15689. try {
  15690. return Module["dynCall_ffffi"](index, a1, a2, a3, a4);
  15691. } catch (e) {
  15692. stackRestore(sp);
  15693. if (typeof e !== "number" && e !== "longjmp") throw e;
  15694. Module["setThrew"](1, 0);
  15695. }
  15696. }
  15697. function invoke_fffi(index, a1, a2, a3) {
  15698. var sp = stackSave();
  15699. try {
  15700. return Module["dynCall_fffi"](index, a1, a2, a3);
  15701. } catch (e) {
  15702. stackRestore(sp);
  15703. if (typeof e !== "number" && e !== "longjmp") throw e;
  15704. Module["setThrew"](1, 0);
  15705. }
  15706. }
  15707. function invoke_fffifffi(index, a1, a2, a3, a4, a5, a6, a7) {
  15708. var sp = stackSave();
  15709. try {
  15710. return Module["dynCall_fffifffi"](index, a1, a2, a3, a4, a5, a6, a7);
  15711. } catch (e) {
  15712. stackRestore(sp);
  15713. if (typeof e !== "number" && e !== "longjmp") throw e;
  15714. Module["setThrew"](1, 0);
  15715. }
  15716. }
  15717. function invoke_ffi(index, a1, a2) {
  15718. var sp = stackSave();
  15719. try {
  15720. return Module["dynCall_ffi"](index, a1, a2);
  15721. } catch (e) {
  15722. stackRestore(sp);
  15723. if (typeof e !== "number" && e !== "longjmp") throw e;
  15724. Module["setThrew"](1, 0);
  15725. }
  15726. }
  15727. function invoke_fi(index, a1) {
  15728. var sp = stackSave();
  15729. try {
  15730. return Module["dynCall_fi"](index, a1);
  15731. } catch (e) {
  15732. stackRestore(sp);
  15733. if (typeof e !== "number" && e !== "longjmp") throw e;
  15734. Module["setThrew"](1, 0);
  15735. }
  15736. }
  15737. function invoke_fif(index, a1, a2) {
  15738. var sp = stackSave();
  15739. try {
  15740. return Module["dynCall_fif"](index, a1, a2);
  15741. } catch (e) {
  15742. stackRestore(sp);
  15743. if (typeof e !== "number" && e !== "longjmp") throw e;
  15744. Module["setThrew"](1, 0);
  15745. }
  15746. }
  15747. function invoke_fiff(index, a1, a2, a3) {
  15748. var sp = stackSave();
  15749. try {
  15750. return Module["dynCall_fiff"](index, a1, a2, a3);
  15751. } catch (e) {
  15752. stackRestore(sp);
  15753. if (typeof e !== "number" && e !== "longjmp") throw e;
  15754. Module["setThrew"](1, 0);
  15755. }
  15756. }
  15757. function invoke_fifffi(index, a1, a2, a3, a4, a5) {
  15758. var sp = stackSave();
  15759. try {
  15760. return Module["dynCall_fifffi"](index, a1, a2, a3, a4, a5);
  15761. } catch (e) {
  15762. stackRestore(sp);
  15763. if (typeof e !== "number" && e !== "longjmp") throw e;
  15764. Module["setThrew"](1, 0);
  15765. }
  15766. }
  15767. function invoke_fiffi(index, a1, a2, a3, a4) {
  15768. var sp = stackSave();
  15769. try {
  15770. return Module["dynCall_fiffi"](index, a1, a2, a3, a4);
  15771. } catch (e) {
  15772. stackRestore(sp);
  15773. if (typeof e !== "number" && e !== "longjmp") throw e;
  15774. Module["setThrew"](1, 0);
  15775. }
  15776. }
  15777. function invoke_fifi(index, a1, a2, a3) {
  15778. var sp = stackSave();
  15779. try {
  15780. return Module["dynCall_fifi"](index, a1, a2, a3);
  15781. } catch (e) {
  15782. stackRestore(sp);
  15783. if (typeof e !== "number" && e !== "longjmp") throw e;
  15784. Module["setThrew"](1, 0);
  15785. }
  15786. }
  15787. function invoke_fifii(index, a1, a2, a3, a4) {
  15788. var sp = stackSave();
  15789. try {
  15790. return Module["dynCall_fifii"](index, a1, a2, a3, a4);
  15791. } catch (e) {
  15792. stackRestore(sp);
  15793. if (typeof e !== "number" && e !== "longjmp") throw e;
  15794. Module["setThrew"](1, 0);
  15795. }
  15796. }
  15797. function invoke_fii(index, a1, a2) {
  15798. var sp = stackSave();
  15799. try {
  15800. return Module["dynCall_fii"](index, a1, a2);
  15801. } catch (e) {
  15802. stackRestore(sp);
  15803. if (typeof e !== "number" && e !== "longjmp") throw e;
  15804. Module["setThrew"](1, 0);
  15805. }
  15806. }
  15807. function invoke_fiif(index, a1, a2, a3) {
  15808. var sp = stackSave();
  15809. try {
  15810. return Module["dynCall_fiif"](index, a1, a2, a3);
  15811. } catch (e) {
  15812. stackRestore(sp);
  15813. if (typeof e !== "number" && e !== "longjmp") throw e;
  15814. Module["setThrew"](1, 0);
  15815. }
  15816. }
  15817. function invoke_fiifi(index, a1, a2, a3, a4) {
  15818. var sp = stackSave();
  15819. try {
  15820. return Module["dynCall_fiifi"](index, a1, a2, a3, a4);
  15821. } catch (e) {
  15822. stackRestore(sp);
  15823. if (typeof e !== "number" && e !== "longjmp") throw e;
  15824. Module["setThrew"](1, 0);
  15825. }
  15826. }
  15827. function invoke_fiifii(index, a1, a2, a3, a4, a5) {
  15828. var sp = stackSave();
  15829. try {
  15830. return Module["dynCall_fiifii"](index, a1, a2, a3, a4, a5);
  15831. } catch (e) {
  15832. stackRestore(sp);
  15833. if (typeof e !== "number" && e !== "longjmp") throw e;
  15834. Module["setThrew"](1, 0);
  15835. }
  15836. }
  15837. function invoke_fiii(index, a1, a2, a3) {
  15838. var sp = stackSave();
  15839. try {
  15840. return Module["dynCall_fiii"](index, a1, a2, a3);
  15841. } catch (e) {
  15842. stackRestore(sp);
  15843. if (typeof e !== "number" && e !== "longjmp") throw e;
  15844. Module["setThrew"](1, 0);
  15845. }
  15846. }
  15847. function invoke_fiiii(index, a1, a2, a3, a4) {
  15848. var sp = stackSave();
  15849. try {
  15850. return Module["dynCall_fiiii"](index, a1, a2, a3, a4);
  15851. } catch (e) {
  15852. stackRestore(sp);
  15853. if (typeof e !== "number" && e !== "longjmp") throw e;
  15854. Module["setThrew"](1, 0);
  15855. }
  15856. }
  15857. function invoke_fiiiiiifiifif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  15858. var sp = stackSave();
  15859. try {
  15860. return Module["dynCall_fiiiiiifiifif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  15861. } catch (e) {
  15862. stackRestore(sp);
  15863. if (typeof e !== "number" && e !== "longjmp") throw e;
  15864. Module["setThrew"](1, 0);
  15865. }
  15866. }
  15867. function invoke_fiiiiiifiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  15868. var sp = stackSave();
  15869. try {
  15870. return Module["dynCall_fiiiiiifiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  15871. } catch (e) {
  15872. stackRestore(sp);
  15873. if (typeof e !== "number" && e !== "longjmp") throw e;
  15874. Module["setThrew"](1, 0);
  15875. }
  15876. }
  15877. function invoke_fji(index, a1, a2, a3) {
  15878. var sp = stackSave();
  15879. try {
  15880. return Module["dynCall_fji"](index, a1, a2, a3);
  15881. } catch (e) {
  15882. stackRestore(sp);
  15883. if (typeof e !== "number" && e !== "longjmp") throw e;
  15884. Module["setThrew"](1, 0);
  15885. }
  15886. }
  15887. function invoke_i(index) {
  15888. var sp = stackSave();
  15889. try {
  15890. return Module["dynCall_i"](index);
  15891. } catch (e) {
  15892. stackRestore(sp);
  15893. if (typeof e !== "number" && e !== "longjmp") throw e;
  15894. Module["setThrew"](1, 0);
  15895. }
  15896. }
  15897. function invoke_idi(index, a1, a2) {
  15898. var sp = stackSave();
  15899. try {
  15900. return Module["dynCall_idi"](index, a1, a2);
  15901. } catch (e) {
  15902. stackRestore(sp);
  15903. if (typeof e !== "number" && e !== "longjmp") throw e;
  15904. Module["setThrew"](1, 0);
  15905. }
  15906. }
  15907. function invoke_idiii(index, a1, a2, a3, a4) {
  15908. var sp = stackSave();
  15909. try {
  15910. return Module["dynCall_idiii"](index, a1, a2, a3, a4);
  15911. } catch (e) {
  15912. stackRestore(sp);
  15913. if (typeof e !== "number" && e !== "longjmp") throw e;
  15914. Module["setThrew"](1, 0);
  15915. }
  15916. }
  15917. function invoke_ifffi(index, a1, a2, a3, a4) {
  15918. var sp = stackSave();
  15919. try {
  15920. return Module["dynCall_ifffi"](index, a1, a2, a3, a4);
  15921. } catch (e) {
  15922. stackRestore(sp);
  15923. if (typeof e !== "number" && e !== "longjmp") throw e;
  15924. Module["setThrew"](1, 0);
  15925. }
  15926. }
  15927. function invoke_iffi(index, a1, a2, a3) {
  15928. var sp = stackSave();
  15929. try {
  15930. return Module["dynCall_iffi"](index, a1, a2, a3);
  15931. } catch (e) {
  15932. stackRestore(sp);
  15933. if (typeof e !== "number" && e !== "longjmp") throw e;
  15934. Module["setThrew"](1, 0);
  15935. }
  15936. }
  15937. function invoke_ifi(index, a1, a2) {
  15938. var sp = stackSave();
  15939. try {
  15940. return Module["dynCall_ifi"](index, a1, a2);
  15941. } catch (e) {
  15942. stackRestore(sp);
  15943. if (typeof e !== "number" && e !== "longjmp") throw e;
  15944. Module["setThrew"](1, 0);
  15945. }
  15946. }
  15947. function invoke_ifiii(index, a1, a2, a3, a4) {
  15948. var sp = stackSave();
  15949. try {
  15950. return Module["dynCall_ifiii"](index, a1, a2, a3, a4);
  15951. } catch (e) {
  15952. stackRestore(sp);
  15953. if (typeof e !== "number" && e !== "longjmp") throw e;
  15954. Module["setThrew"](1, 0);
  15955. }
  15956. }
  15957. function invoke_ii(index, a1) {
  15958. var sp = stackSave();
  15959. try {
  15960. return Module["dynCall_ii"](index, a1);
  15961. } catch (e) {
  15962. stackRestore(sp);
  15963. if (typeof e !== "number" && e !== "longjmp") throw e;
  15964. Module["setThrew"](1, 0);
  15965. }
  15966. }
  15967. function invoke_iidi(index, a1, a2, a3) {
  15968. var sp = stackSave();
  15969. try {
  15970. return Module["dynCall_iidi"](index, a1, a2, a3);
  15971. } catch (e) {
  15972. stackRestore(sp);
  15973. if (typeof e !== "number" && e !== "longjmp") throw e;
  15974. Module["setThrew"](1, 0);
  15975. }
  15976. }
  15977. function invoke_iidii(index, a1, a2, a3, a4) {
  15978. var sp = stackSave();
  15979. try {
  15980. return Module["dynCall_iidii"](index, a1, a2, a3, a4);
  15981. } catch (e) {
  15982. stackRestore(sp);
  15983. if (typeof e !== "number" && e !== "longjmp") throw e;
  15984. Module["setThrew"](1, 0);
  15985. }
  15986. }
  15987. function invoke_iif(index, a1, a2) {
  15988. var sp = stackSave();
  15989. try {
  15990. return Module["dynCall_iif"](index, a1, a2);
  15991. } catch (e) {
  15992. stackRestore(sp);
  15993. if (typeof e !== "number" && e !== "longjmp") throw e;
  15994. Module["setThrew"](1, 0);
  15995. }
  15996. }
  15997. function invoke_iifff(index, a1, a2, a3, a4) {
  15998. var sp = stackSave();
  15999. try {
  16000. return Module["dynCall_iifff"](index, a1, a2, a3, a4);
  16001. } catch (e) {
  16002. stackRestore(sp);
  16003. if (typeof e !== "number" && e !== "longjmp") throw e;
  16004. Module["setThrew"](1, 0);
  16005. }
  16006. }
  16007. function invoke_iifffi(index, a1, a2, a3, a4, a5) {
  16008. var sp = stackSave();
  16009. try {
  16010. return Module["dynCall_iifffi"](index, a1, a2, a3, a4, a5);
  16011. } catch (e) {
  16012. stackRestore(sp);
  16013. if (typeof e !== "number" && e !== "longjmp") throw e;
  16014. Module["setThrew"](1, 0);
  16015. }
  16016. }
  16017. function invoke_iiffi(index, a1, a2, a3, a4) {
  16018. var sp = stackSave();
  16019. try {
  16020. return Module["dynCall_iiffi"](index, a1, a2, a3, a4);
  16021. } catch (e) {
  16022. stackRestore(sp);
  16023. if (typeof e !== "number" && e !== "longjmp") throw e;
  16024. Module["setThrew"](1, 0);
  16025. }
  16026. }
  16027. function invoke_iifi(index, a1, a2, a3) {
  16028. var sp = stackSave();
  16029. try {
  16030. return Module["dynCall_iifi"](index, a1, a2, a3);
  16031. } catch (e) {
  16032. stackRestore(sp);
  16033. if (typeof e !== "number" && e !== "longjmp") throw e;
  16034. Module["setThrew"](1, 0);
  16035. }
  16036. }
  16037. function invoke_iifii(index, a1, a2, a3, a4) {
  16038. var sp = stackSave();
  16039. try {
  16040. return Module["dynCall_iifii"](index, a1, a2, a3, a4);
  16041. } catch (e) {
  16042. stackRestore(sp);
  16043. if (typeof e !== "number" && e !== "longjmp") throw e;
  16044. Module["setThrew"](1, 0);
  16045. }
  16046. }
  16047. function invoke_iifiii(index, a1, a2, a3, a4, a5) {
  16048. var sp = stackSave();
  16049. try {
  16050. return Module["dynCall_iifiii"](index, a1, a2, a3, a4, a5);
  16051. } catch (e) {
  16052. stackRestore(sp);
  16053. if (typeof e !== "number" && e !== "longjmp") throw e;
  16054. Module["setThrew"](1, 0);
  16055. }
  16056. }
  16057. function invoke_iifiiiijii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  16058. var sp = stackSave();
  16059. try {
  16060. return Module["dynCall_iifiiiijii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  16061. } catch (e) {
  16062. stackRestore(sp);
  16063. if (typeof e !== "number" && e !== "longjmp") throw e;
  16064. Module["setThrew"](1, 0);
  16065. }
  16066. }
  16067. function invoke_iii(index, a1, a2) {
  16068. var sp = stackSave();
  16069. try {
  16070. return Module["dynCall_iii"](index, a1, a2);
  16071. } catch (e) {
  16072. stackRestore(sp);
  16073. if (typeof e !== "number" && e !== "longjmp") throw e;
  16074. Module["setThrew"](1, 0);
  16075. }
  16076. }
  16077. function invoke_iiif(index, a1, a2, a3) {
  16078. var sp = stackSave();
  16079. try {
  16080. return Module["dynCall_iiif"](index, a1, a2, a3);
  16081. } catch (e) {
  16082. stackRestore(sp);
  16083. if (typeof e !== "number" && e !== "longjmp") throw e;
  16084. Module["setThrew"](1, 0);
  16085. }
  16086. }
  16087. function invoke_iiiff(index, a1, a2, a3, a4) {
  16088. var sp = stackSave();
  16089. try {
  16090. return Module["dynCall_iiiff"](index, a1, a2, a3, a4);
  16091. } catch (e) {
  16092. stackRestore(sp);
  16093. if (typeof e !== "number" && e !== "longjmp") throw e;
  16094. Module["setThrew"](1, 0);
  16095. }
  16096. }
  16097. function invoke_iiifi(index, a1, a2, a3, a4) {
  16098. var sp = stackSave();
  16099. try {
  16100. return Module["dynCall_iiifi"](index, a1, a2, a3, a4);
  16101. } catch (e) {
  16102. stackRestore(sp);
  16103. if (typeof e !== "number" && e !== "longjmp") throw e;
  16104. Module["setThrew"](1, 0);
  16105. }
  16106. }
  16107. function invoke_iiifii(index, a1, a2, a3, a4, a5) {
  16108. var sp = stackSave();
  16109. try {
  16110. return Module["dynCall_iiifii"](index, a1, a2, a3, a4, a5);
  16111. } catch (e) {
  16112. stackRestore(sp);
  16113. if (typeof e !== "number" && e !== "longjmp") throw e;
  16114. Module["setThrew"](1, 0);
  16115. }
  16116. }
  16117. function invoke_iiifiii(index, a1, a2, a3, a4, a5, a6) {
  16118. var sp = stackSave();
  16119. try {
  16120. return Module["dynCall_iiifiii"](index, a1, a2, a3, a4, a5, a6);
  16121. } catch (e) {
  16122. stackRestore(sp);
  16123. if (typeof e !== "number" && e !== "longjmp") throw e;
  16124. Module["setThrew"](1, 0);
  16125. }
  16126. }
  16127. function invoke_iiifiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  16128. var sp = stackSave();
  16129. try {
  16130. return Module["dynCall_iiifiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  16131. } catch (e) {
  16132. stackRestore(sp);
  16133. if (typeof e !== "number" && e !== "longjmp") throw e;
  16134. Module["setThrew"](1, 0);
  16135. }
  16136. }
  16137. function invoke_iiii(index, a1, a2, a3) {
  16138. var sp = stackSave();
  16139. try {
  16140. return Module["dynCall_iiii"](index, a1, a2, a3);
  16141. } catch (e) {
  16142. stackRestore(sp);
  16143. if (typeof e !== "number" && e !== "longjmp") throw e;
  16144. Module["setThrew"](1, 0);
  16145. }
  16146. }
  16147. function invoke_iiiifffffi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  16148. var sp = stackSave();
  16149. try {
  16150. return Module["dynCall_iiiifffffi"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  16151. } catch (e) {
  16152. stackRestore(sp);
  16153. if (typeof e !== "number" && e !== "longjmp") throw e;
  16154. Module["setThrew"](1, 0);
  16155. }
  16156. }
  16157. function invoke_iiiifffffii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  16158. var sp = stackSave();
  16159. try {
  16160. return Module["dynCall_iiiifffffii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  16161. } catch (e) {
  16162. stackRestore(sp);
  16163. if (typeof e !== "number" && e !== "longjmp") throw e;
  16164. Module["setThrew"](1, 0);
  16165. }
  16166. }
  16167. function invoke_iiiifffiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  16168. var sp = stackSave();
  16169. try {
  16170. return Module["dynCall_iiiifffiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  16171. } catch (e) {
  16172. stackRestore(sp);
  16173. if (typeof e !== "number" && e !== "longjmp") throw e;
  16174. Module["setThrew"](1, 0);
  16175. }
  16176. }
  16177. function invoke_iiiifi(index, a1, a2, a3, a4, a5) {
  16178. var sp = stackSave();
  16179. try {
  16180. return Module["dynCall_iiiifi"](index, a1, a2, a3, a4, a5);
  16181. } catch (e) {
  16182. stackRestore(sp);
  16183. if (typeof e !== "number" && e !== "longjmp") throw e;
  16184. Module["setThrew"](1, 0);
  16185. }
  16186. }
  16187. function invoke_iiiifii(index, a1, a2, a3, a4, a5, a6) {
  16188. var sp = stackSave();
  16189. try {
  16190. return Module["dynCall_iiiifii"](index, a1, a2, a3, a4, a5, a6);
  16191. } catch (e) {
  16192. stackRestore(sp);
  16193. if (typeof e !== "number" && e !== "longjmp") throw e;
  16194. Module["setThrew"](1, 0);
  16195. }
  16196. }
  16197. function invoke_iiiifiii(index, a1, a2, a3, a4, a5, a6, a7) {
  16198. var sp = stackSave();
  16199. try {
  16200. return Module["dynCall_iiiifiii"](index, a1, a2, a3, a4, a5, a6, a7);
  16201. } catch (e) {
  16202. stackRestore(sp);
  16203. if (typeof e !== "number" && e !== "longjmp") throw e;
  16204. Module["setThrew"](1, 0);
  16205. }
  16206. }
  16207. function invoke_iiiifiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  16208. var sp = stackSave();
  16209. try {
  16210. return Module["dynCall_iiiifiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  16211. } catch (e) {
  16212. stackRestore(sp);
  16213. if (typeof e !== "number" && e !== "longjmp") throw e;
  16214. Module["setThrew"](1, 0);
  16215. }
  16216. }
  16217. function invoke_iiiifiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  16218. var sp = stackSave();
  16219. try {
  16220. return Module["dynCall_iiiifiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  16221. } catch (e) {
  16222. stackRestore(sp);
  16223. if (typeof e !== "number" && e !== "longjmp") throw e;
  16224. Module["setThrew"](1, 0);
  16225. }
  16226. }
  16227. function invoke_iiiii(index, a1, a2, a3, a4) {
  16228. var sp = stackSave();
  16229. try {
  16230. return Module["dynCall_iiiii"](index, a1, a2, a3, a4);
  16231. } catch (e) {
  16232. stackRestore(sp);
  16233. if (typeof e !== "number" && e !== "longjmp") throw e;
  16234. Module["setThrew"](1, 0);
  16235. }
  16236. }
  16237. function invoke_iiiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  16238. var sp = stackSave();
  16239. try {
  16240. return Module["dynCall_iiiiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  16241. } catch (e) {
  16242. stackRestore(sp);
  16243. if (typeof e !== "number" && e !== "longjmp") throw e;
  16244. Module["setThrew"](1, 0);
  16245. }
  16246. }
  16247. function invoke_iiiiifiiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  16248. var sp = stackSave();
  16249. try {
  16250. return Module["dynCall_iiiiifiiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  16251. } catch (e) {
  16252. stackRestore(sp);
  16253. if (typeof e !== "number" && e !== "longjmp") throw e;
  16254. Module["setThrew"](1, 0);
  16255. }
  16256. }
  16257. function invoke_iiiiii(index, a1, a2, a3, a4, a5) {
  16258. var sp = stackSave();
  16259. try {
  16260. return Module["dynCall_iiiiii"](index, a1, a2, a3, a4, a5);
  16261. } catch (e) {
  16262. stackRestore(sp);
  16263. if (typeof e !== "number" && e !== "longjmp") throw e;
  16264. Module["setThrew"](1, 0);
  16265. }
  16266. }
  16267. function invoke_iiiiiifff(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  16268. var sp = stackSave();
  16269. try {
  16270. return Module["dynCall_iiiiiifff"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  16271. } catch (e) {
  16272. stackRestore(sp);
  16273. if (typeof e !== "number" && e !== "longjmp") throw e;
  16274. Module["setThrew"](1, 0);
  16275. }
  16276. }
  16277. function invoke_iiiiiifffiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) {
  16278. var sp = stackSave();
  16279. try {
  16280. return Module["dynCall_iiiiiifffiiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15);
  16281. } catch (e) {
  16282. stackRestore(sp);
  16283. if (typeof e !== "number" && e !== "longjmp") throw e;
  16284. Module["setThrew"](1, 0);
  16285. }
  16286. }
  16287. 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) {
  16288. var sp = stackSave();
  16289. try {
  16290. 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);
  16291. } catch (e) {
  16292. stackRestore(sp);
  16293. if (typeof e !== "number" && e !== "longjmp") throw e;
  16294. Module["setThrew"](1, 0);
  16295. }
  16296. }
  16297. 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) {
  16298. var sp = stackSave();
  16299. try {
  16300. 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);
  16301. } catch (e) {
  16302. stackRestore(sp);
  16303. if (typeof e !== "number" && e !== "longjmp") throw e;
  16304. Module["setThrew"](1, 0);
  16305. }
  16306. }
  16307. 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) {
  16308. var sp = stackSave();
  16309. try {
  16310. 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);
  16311. } catch (e) {
  16312. stackRestore(sp);
  16313. if (typeof e !== "number" && e !== "longjmp") throw e;
  16314. Module["setThrew"](1, 0);
  16315. }
  16316. }
  16317. function invoke_iiiiiifiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  16318. var sp = stackSave();
  16319. try {
  16320. return Module["dynCall_iiiiiifiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  16321. } catch (e) {
  16322. stackRestore(sp);
  16323. if (typeof e !== "number" && e !== "longjmp") throw e;
  16324. Module["setThrew"](1, 0);
  16325. }
  16326. }
  16327. function invoke_iiiiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  16328. var sp = stackSave();
  16329. try {
  16330. return Module["dynCall_iiiiiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  16331. } catch (e) {
  16332. stackRestore(sp);
  16333. if (typeof e !== "number" && e !== "longjmp") throw e;
  16334. Module["setThrew"](1, 0);
  16335. }
  16336. }
  16337. function invoke_iiiiiii(index, a1, a2, a3, a4, a5, a6) {
  16338. var sp = stackSave();
  16339. try {
  16340. return Module["dynCall_iiiiiii"](index, a1, a2, a3, a4, a5, a6);
  16341. } catch (e) {
  16342. stackRestore(sp);
  16343. if (typeof e !== "number" && e !== "longjmp") throw e;
  16344. Module["setThrew"](1, 0);
  16345. }
  16346. }
  16347. function invoke_iiiiiiifiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  16348. var sp = stackSave();
  16349. try {
  16350. return Module["dynCall_iiiiiiifiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  16351. } catch (e) {
  16352. stackRestore(sp);
  16353. if (typeof e !== "number" && e !== "longjmp") throw e;
  16354. Module["setThrew"](1, 0);
  16355. }
  16356. }
  16357. function invoke_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  16358. var sp = stackSave();
  16359. try {
  16360. return Module["dynCall_iiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  16361. } catch (e) {
  16362. stackRestore(sp);
  16363. if (typeof e !== "number" && e !== "longjmp") throw e;
  16364. Module["setThrew"](1, 0);
  16365. }
  16366. }
  16367. function invoke_iiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  16368. var sp = stackSave();
  16369. try {
  16370. return Module["dynCall_iiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  16371. } catch (e) {
  16372. stackRestore(sp);
  16373. if (typeof e !== "number" && e !== "longjmp") throw e;
  16374. Module["setThrew"](1, 0);
  16375. }
  16376. }
  16377. function invoke_iiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  16378. var sp = stackSave();
  16379. try {
  16380. return Module["dynCall_iiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  16381. } catch (e) {
  16382. stackRestore(sp);
  16383. if (typeof e !== "number" && e !== "longjmp") throw e;
  16384. Module["setThrew"](1, 0);
  16385. }
  16386. }
  16387. function invoke_iiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  16388. var sp = stackSave();
  16389. try {
  16390. return Module["dynCall_iiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  16391. } catch (e) {
  16392. stackRestore(sp);
  16393. if (typeof e !== "number" && e !== "longjmp") throw e;
  16394. Module["setThrew"](1, 0);
  16395. }
  16396. }
  16397. function invoke_iiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  16398. var sp = stackSave();
  16399. try {
  16400. return Module["dynCall_iiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  16401. } catch (e) {
  16402. stackRestore(sp);
  16403. if (typeof e !== "number" && e !== "longjmp") throw e;
  16404. Module["setThrew"](1, 0);
  16405. }
  16406. }
  16407. function invoke_iiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  16408. var sp = stackSave();
  16409. try {
  16410. return Module["dynCall_iiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  16411. } catch (e) {
  16412. stackRestore(sp);
  16413. if (typeof e !== "number" && e !== "longjmp") throw e;
  16414. Module["setThrew"](1, 0);
  16415. }
  16416. }
  16417. function invoke_iiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  16418. var sp = stackSave();
  16419. try {
  16420. return Module["dynCall_iiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  16421. } catch (e) {
  16422. stackRestore(sp);
  16423. if (typeof e !== "number" && e !== "longjmp") throw e;
  16424. Module["setThrew"](1, 0);
  16425. }
  16426. }
  16427. function invoke_iiiiiji(index, a1, a2, a3, a4, a5, a6, a7) {
  16428. var sp = stackSave();
  16429. try {
  16430. return Module["dynCall_iiiiiji"](index, a1, a2, a3, a4, a5, a6, a7);
  16431. } catch (e) {
  16432. stackRestore(sp);
  16433. if (typeof e !== "number" && e !== "longjmp") throw e;
  16434. Module["setThrew"](1, 0);
  16435. }
  16436. }
  16437. function invoke_iiiij(index, a1, a2, a3, a4, a5) {
  16438. var sp = stackSave();
  16439. try {
  16440. return Module["dynCall_iiiij"](index, a1, a2, a3, a4, a5);
  16441. } catch (e) {
  16442. stackRestore(sp);
  16443. if (typeof e !== "number" && e !== "longjmp") throw e;
  16444. Module["setThrew"](1, 0);
  16445. }
  16446. }
  16447. function invoke_iiiiji(index, a1, a2, a3, a4, a5, a6) {
  16448. var sp = stackSave();
  16449. try {
  16450. return Module["dynCall_iiiiji"](index, a1, a2, a3, a4, a5, a6);
  16451. } catch (e) {
  16452. stackRestore(sp);
  16453. if (typeof e !== "number" && e !== "longjmp") throw e;
  16454. Module["setThrew"](1, 0);
  16455. }
  16456. }
  16457. function invoke_iiiijii(index, a1, a2, a3, a4, a5, a6, a7) {
  16458. var sp = stackSave();
  16459. try {
  16460. return Module["dynCall_iiiijii"](index, a1, a2, a3, a4, a5, a6, a7);
  16461. } catch (e) {
  16462. stackRestore(sp);
  16463. if (typeof e !== "number" && e !== "longjmp") throw e;
  16464. Module["setThrew"](1, 0);
  16465. }
  16466. }
  16467. function invoke_iiiijiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  16468. var sp = stackSave();
  16469. try {
  16470. return Module["dynCall_iiiijiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  16471. } catch (e) {
  16472. stackRestore(sp);
  16473. if (typeof e !== "number" && e !== "longjmp") throw e;
  16474. Module["setThrew"](1, 0);
  16475. }
  16476. }
  16477. function invoke_iiij(index, a1, a2, a3, a4) {
  16478. var sp = stackSave();
  16479. try {
  16480. return Module["dynCall_iiij"](index, a1, a2, a3, a4);
  16481. } catch (e) {
  16482. stackRestore(sp);
  16483. if (typeof e !== "number" && e !== "longjmp") throw e;
  16484. Module["setThrew"](1, 0);
  16485. }
  16486. }
  16487. function invoke_iiiji(index, a1, a2, a3, a4, a5) {
  16488. var sp = stackSave();
  16489. try {
  16490. return Module["dynCall_iiiji"](index, a1, a2, a3, a4, a5);
  16491. } catch (e) {
  16492. stackRestore(sp);
  16493. if (typeof e !== "number" && e !== "longjmp") throw e;
  16494. Module["setThrew"](1, 0);
  16495. }
  16496. }
  16497. function invoke_iiijii(index, a1, a2, a3, a4, a5, a6) {
  16498. var sp = stackSave();
  16499. try {
  16500. return Module["dynCall_iiijii"](index, a1, a2, a3, a4, a5, a6);
  16501. } catch (e) {
  16502. stackRestore(sp);
  16503. if (typeof e !== "number" && e !== "longjmp") throw e;
  16504. Module["setThrew"](1, 0);
  16505. }
  16506. }
  16507. function invoke_iiijiii(index, a1, a2, a3, a4, a5, a6, a7) {
  16508. var sp = stackSave();
  16509. try {
  16510. return Module["dynCall_iiijiii"](index, a1, a2, a3, a4, a5, a6, a7);
  16511. } catch (e) {
  16512. stackRestore(sp);
  16513. if (typeof e !== "number" && e !== "longjmp") throw e;
  16514. Module["setThrew"](1, 0);
  16515. }
  16516. }
  16517. function invoke_iiijji(index, a1, a2, a3, a4, a5, a6, a7) {
  16518. var sp = stackSave();
  16519. try {
  16520. return Module["dynCall_iiijji"](index, a1, a2, a3, a4, a5, a6, a7);
  16521. } catch (e) {
  16522. stackRestore(sp);
  16523. if (typeof e !== "number" && e !== "longjmp") throw e;
  16524. Module["setThrew"](1, 0);
  16525. }
  16526. }
  16527. function invoke_iiijjiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  16528. var sp = stackSave();
  16529. try {
  16530. return Module["dynCall_iiijjiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  16531. } catch (e) {
  16532. stackRestore(sp);
  16533. if (typeof e !== "number" && e !== "longjmp") throw e;
  16534. Module["setThrew"](1, 0);
  16535. }
  16536. }
  16537. function invoke_iij(index, a1, a2, a3) {
  16538. var sp = stackSave();
  16539. try {
  16540. return Module["dynCall_iij"](index, a1, a2, a3);
  16541. } catch (e) {
  16542. stackRestore(sp);
  16543. if (typeof e !== "number" && e !== "longjmp") throw e;
  16544. Module["setThrew"](1, 0);
  16545. }
  16546. }
  16547. function invoke_iiji(index, a1, a2, a3, a4) {
  16548. var sp = stackSave();
  16549. try {
  16550. return Module["dynCall_iiji"](index, a1, a2, a3, a4);
  16551. } catch (e) {
  16552. stackRestore(sp);
  16553. if (typeof e !== "number" && e !== "longjmp") throw e;
  16554. Module["setThrew"](1, 0);
  16555. }
  16556. }
  16557. function invoke_iijii(index, a1, a2, a3, a4, a5) {
  16558. var sp = stackSave();
  16559. try {
  16560. return Module["dynCall_iijii"](index, a1, a2, a3, a4, a5);
  16561. } catch (e) {
  16562. stackRestore(sp);
  16563. if (typeof e !== "number" && e !== "longjmp") throw e;
  16564. Module["setThrew"](1, 0);
  16565. }
  16566. }
  16567. function invoke_iijiii(index, a1, a2, a3, a4, a5, a6) {
  16568. var sp = stackSave();
  16569. try {
  16570. return Module["dynCall_iijiii"](index, a1, a2, a3, a4, a5, a6);
  16571. } catch (e) {
  16572. stackRestore(sp);
  16573. if (typeof e !== "number" && e !== "longjmp") throw e;
  16574. Module["setThrew"](1, 0);
  16575. }
  16576. }
  16577. function invoke_iijji(index, a1, a2, a3, a4, a5, a6) {
  16578. var sp = stackSave();
  16579. try {
  16580. return Module["dynCall_iijji"](index, a1, a2, a3, a4, a5, a6);
  16581. } catch (e) {
  16582. stackRestore(sp);
  16583. if (typeof e !== "number" && e !== "longjmp") throw e;
  16584. Module["setThrew"](1, 0);
  16585. }
  16586. }
  16587. function invoke_iijjii(index, a1, a2, a3, a4, a5, a6, a7) {
  16588. var sp = stackSave();
  16589. try {
  16590. return Module["dynCall_iijjii"](index, a1, a2, a3, a4, a5, a6, a7);
  16591. } catch (e) {
  16592. stackRestore(sp);
  16593. if (typeof e !== "number" && e !== "longjmp") throw e;
  16594. Module["setThrew"](1, 0);
  16595. }
  16596. }
  16597. function invoke_iijjiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  16598. var sp = stackSave();
  16599. try {
  16600. return Module["dynCall_iijjiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  16601. } catch (e) {
  16602. stackRestore(sp);
  16603. if (typeof e !== "number" && e !== "longjmp") throw e;
  16604. Module["setThrew"](1, 0);
  16605. }
  16606. }
  16607. function invoke_iijjji(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  16608. var sp = stackSave();
  16609. try {
  16610. return Module["dynCall_iijjji"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  16611. } catch (e) {
  16612. stackRestore(sp);
  16613. if (typeof e !== "number" && e !== "longjmp") throw e;
  16614. Module["setThrew"](1, 0);
  16615. }
  16616. }
  16617. function invoke_ij(index, a1, a2) {
  16618. var sp = stackSave();
  16619. try {
  16620. return Module["dynCall_ij"](index, a1, a2);
  16621. } catch (e) {
  16622. stackRestore(sp);
  16623. if (typeof e !== "number" && e !== "longjmp") throw e;
  16624. Module["setThrew"](1, 0);
  16625. }
  16626. }
  16627. function invoke_iji(index, a1, a2, a3) {
  16628. var sp = stackSave();
  16629. try {
  16630. return Module["dynCall_iji"](index, a1, a2, a3);
  16631. } catch (e) {
  16632. stackRestore(sp);
  16633. if (typeof e !== "number" && e !== "longjmp") throw e;
  16634. Module["setThrew"](1, 0);
  16635. }
  16636. }
  16637. function invoke_ijiii(index, a1, a2, a3, a4, a5) {
  16638. var sp = stackSave();
  16639. try {
  16640. return Module["dynCall_ijiii"](index, a1, a2, a3, a4, a5);
  16641. } catch (e) {
  16642. stackRestore(sp);
  16643. if (typeof e !== "number" && e !== "longjmp") throw e;
  16644. Module["setThrew"](1, 0);
  16645. }
  16646. }
  16647. function invoke_ijj(index, a1, a2, a3, a4) {
  16648. var sp = stackSave();
  16649. try {
  16650. return Module["dynCall_ijj"](index, a1, a2, a3, a4);
  16651. } catch (e) {
  16652. stackRestore(sp);
  16653. if (typeof e !== "number" && e !== "longjmp") throw e;
  16654. Module["setThrew"](1, 0);
  16655. }
  16656. }
  16657. function invoke_ijji(index, a1, a2, a3, a4, a5) {
  16658. var sp = stackSave();
  16659. try {
  16660. return Module["dynCall_ijji"](index, a1, a2, a3, a4, a5);
  16661. } catch (e) {
  16662. stackRestore(sp);
  16663. if (typeof e !== "number" && e !== "longjmp") throw e;
  16664. Module["setThrew"](1, 0);
  16665. }
  16666. }
  16667. function invoke_j(index) {
  16668. var sp = stackSave();
  16669. try {
  16670. return Module["dynCall_j"](index);
  16671. } catch (e) {
  16672. stackRestore(sp);
  16673. if (typeof e !== "number" && e !== "longjmp") throw e;
  16674. Module["setThrew"](1, 0);
  16675. }
  16676. }
  16677. function invoke_jdi(index, a1, a2) {
  16678. var sp = stackSave();
  16679. try {
  16680. return Module["dynCall_jdi"](index, a1, a2);
  16681. } catch (e) {
  16682. stackRestore(sp);
  16683. if (typeof e !== "number" && e !== "longjmp") throw e;
  16684. Module["setThrew"](1, 0);
  16685. }
  16686. }
  16687. function invoke_jdii(index, a1, a2, a3) {
  16688. var sp = stackSave();
  16689. try {
  16690. return Module["dynCall_jdii"](index, a1, a2, a3);
  16691. } catch (e) {
  16692. stackRestore(sp);
  16693. if (typeof e !== "number" && e !== "longjmp") throw e;
  16694. Module["setThrew"](1, 0);
  16695. }
  16696. }
  16697. function invoke_jfi(index, a1, a2) {
  16698. var sp = stackSave();
  16699. try {
  16700. return Module["dynCall_jfi"](index, a1, a2);
  16701. } catch (e) {
  16702. stackRestore(sp);
  16703. if (typeof e !== "number" && e !== "longjmp") throw e;
  16704. Module["setThrew"](1, 0);
  16705. }
  16706. }
  16707. function invoke_ji(index, a1) {
  16708. var sp = stackSave();
  16709. try {
  16710. return Module["dynCall_ji"](index, a1);
  16711. } catch (e) {
  16712. stackRestore(sp);
  16713. if (typeof e !== "number" && e !== "longjmp") throw e;
  16714. Module["setThrew"](1, 0);
  16715. }
  16716. }
  16717. function invoke_jidi(index, a1, a2, a3) {
  16718. var sp = stackSave();
  16719. try {
  16720. return Module["dynCall_jidi"](index, a1, a2, a3);
  16721. } catch (e) {
  16722. stackRestore(sp);
  16723. if (typeof e !== "number" && e !== "longjmp") throw e;
  16724. Module["setThrew"](1, 0);
  16725. }
  16726. }
  16727. function invoke_jidii(index, a1, a2, a3, a4) {
  16728. var sp = stackSave();
  16729. try {
  16730. return Module["dynCall_jidii"](index, a1, a2, a3, a4);
  16731. } catch (e) {
  16732. stackRestore(sp);
  16733. if (typeof e !== "number" && e !== "longjmp") throw e;
  16734. Module["setThrew"](1, 0);
  16735. }
  16736. }
  16737. function invoke_jii(index, a1, a2) {
  16738. var sp = stackSave();
  16739. try {
  16740. return Module["dynCall_jii"](index, a1, a2);
  16741. } catch (e) {
  16742. stackRestore(sp);
  16743. if (typeof e !== "number" && e !== "longjmp") throw e;
  16744. Module["setThrew"](1, 0);
  16745. }
  16746. }
  16747. function invoke_jiii(index, a1, a2, a3) {
  16748. var sp = stackSave();
  16749. try {
  16750. return Module["dynCall_jiii"](index, a1, a2, a3);
  16751. } catch (e) {
  16752. stackRestore(sp);
  16753. if (typeof e !== "number" && e !== "longjmp") throw e;
  16754. Module["setThrew"](1, 0);
  16755. }
  16756. }
  16757. function invoke_jiiii(index, a1, a2, a3, a4) {
  16758. var sp = stackSave();
  16759. try {
  16760. return Module["dynCall_jiiii"](index, a1, a2, a3, a4);
  16761. } catch (e) {
  16762. stackRestore(sp);
  16763. if (typeof e !== "number" && e !== "longjmp") throw e;
  16764. Module["setThrew"](1, 0);
  16765. }
  16766. }
  16767. function invoke_jiiiii(index, a1, a2, a3, a4, a5) {
  16768. var sp = stackSave();
  16769. try {
  16770. return Module["dynCall_jiiiii"](index, a1, a2, a3, a4, a5);
  16771. } catch (e) {
  16772. stackRestore(sp);
  16773. if (typeof e !== "number" && e !== "longjmp") throw e;
  16774. Module["setThrew"](1, 0);
  16775. }
  16776. }
  16777. function invoke_jiiiiii(index, a1, a2, a3, a4, a5, a6) {
  16778. var sp = stackSave();
  16779. try {
  16780. return Module["dynCall_jiiiiii"](index, a1, a2, a3, a4, a5, a6);
  16781. } catch (e) {
  16782. stackRestore(sp);
  16783. if (typeof e !== "number" && e !== "longjmp") throw e;
  16784. Module["setThrew"](1, 0);
  16785. }
  16786. }
  16787. function invoke_jiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  16788. var sp = stackSave();
  16789. try {
  16790. return Module["dynCall_jiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  16791. } catch (e) {
  16792. stackRestore(sp);
  16793. if (typeof e !== "number" && e !== "longjmp") throw e;
  16794. Module["setThrew"](1, 0);
  16795. }
  16796. }
  16797. function invoke_jiiji(index, a1, a2, a3, a4, a5) {
  16798. var sp = stackSave();
  16799. try {
  16800. return Module["dynCall_jiiji"](index, a1, a2, a3, a4, a5);
  16801. } catch (e) {
  16802. stackRestore(sp);
  16803. if (typeof e !== "number" && e !== "longjmp") throw e;
  16804. Module["setThrew"](1, 0);
  16805. }
  16806. }
  16807. function invoke_jiji(index, a1, a2, a3, a4) {
  16808. var sp = stackSave();
  16809. try {
  16810. return Module["dynCall_jiji"](index, a1, a2, a3, a4);
  16811. } catch (e) {
  16812. stackRestore(sp);
  16813. if (typeof e !== "number" && e !== "longjmp") throw e;
  16814. Module["setThrew"](1, 0);
  16815. }
  16816. }
  16817. function invoke_jijii(index, a1, a2, a3, a4, a5) {
  16818. var sp = stackSave();
  16819. try {
  16820. return Module["dynCall_jijii"](index, a1, a2, a3, a4, a5);
  16821. } catch (e) {
  16822. stackRestore(sp);
  16823. if (typeof e !== "number" && e !== "longjmp") throw e;
  16824. Module["setThrew"](1, 0);
  16825. }
  16826. }
  16827. function invoke_jijiii(index, a1, a2, a3, a4, a5, a6) {
  16828. var sp = stackSave();
  16829. try {
  16830. return Module["dynCall_jijiii"](index, a1, a2, a3, a4, a5, a6);
  16831. } catch (e) {
  16832. stackRestore(sp);
  16833. if (typeof e !== "number" && e !== "longjmp") throw e;
  16834. Module["setThrew"](1, 0);
  16835. }
  16836. }
  16837. function invoke_jijji(index, a1, a2, a3, a4, a5, a6) {
  16838. var sp = stackSave();
  16839. try {
  16840. return Module["dynCall_jijji"](index, a1, a2, a3, a4, a5, a6);
  16841. } catch (e) {
  16842. stackRestore(sp);
  16843. if (typeof e !== "number" && e !== "longjmp") throw e;
  16844. Module["setThrew"](1, 0);
  16845. }
  16846. }
  16847. function invoke_jji(index, a1, a2, a3) {
  16848. var sp = stackSave();
  16849. try {
  16850. return Module["dynCall_jji"](index, a1, a2, a3);
  16851. } catch (e) {
  16852. stackRestore(sp);
  16853. if (typeof e !== "number" && e !== "longjmp") throw e;
  16854. Module["setThrew"](1, 0);
  16855. }
  16856. }
  16857. function invoke_v(index) {
  16858. var sp = stackSave();
  16859. try {
  16860. Module["dynCall_v"](index);
  16861. } catch (e) {
  16862. stackRestore(sp);
  16863. if (typeof e !== "number" && e !== "longjmp") throw e;
  16864. Module["setThrew"](1, 0);
  16865. }
  16866. }
  16867. function invoke_vd(index, a1) {
  16868. var sp = stackSave();
  16869. try {
  16870. Module["dynCall_vd"](index, a1);
  16871. } catch (e) {
  16872. stackRestore(sp);
  16873. if (typeof e !== "number" && e !== "longjmp") throw e;
  16874. Module["setThrew"](1, 0);
  16875. }
  16876. }
  16877. function invoke_vf(index, a1) {
  16878. var sp = stackSave();
  16879. try {
  16880. Module["dynCall_vf"](index, a1);
  16881. } catch (e) {
  16882. stackRestore(sp);
  16883. if (typeof e !== "number" && e !== "longjmp") throw e;
  16884. Module["setThrew"](1, 0);
  16885. }
  16886. }
  16887. function invoke_vff(index, a1, a2) {
  16888. var sp = stackSave();
  16889. try {
  16890. Module["dynCall_vff"](index, a1, a2);
  16891. } catch (e) {
  16892. stackRestore(sp);
  16893. if (typeof e !== "number" && e !== "longjmp") throw e;
  16894. Module["setThrew"](1, 0);
  16895. }
  16896. }
  16897. function invoke_vffff(index, a1, a2, a3, a4) {
  16898. var sp = stackSave();
  16899. try {
  16900. Module["dynCall_vffff"](index, a1, a2, a3, a4);
  16901. } catch (e) {
  16902. stackRestore(sp);
  16903. if (typeof e !== "number" && e !== "longjmp") throw e;
  16904. Module["setThrew"](1, 0);
  16905. }
  16906. }
  16907. function invoke_vfi(index, a1, a2) {
  16908. var sp = stackSave();
  16909. try {
  16910. Module["dynCall_vfi"](index, a1, a2);
  16911. } catch (e) {
  16912. stackRestore(sp);
  16913. if (typeof e !== "number" && e !== "longjmp") throw e;
  16914. Module["setThrew"](1, 0);
  16915. }
  16916. }
  16917. function invoke_vi(index, a1) {
  16918. var sp = stackSave();
  16919. try {
  16920. Module["dynCall_vi"](index, a1);
  16921. } catch (e) {
  16922. stackRestore(sp);
  16923. if (typeof e !== "number" && e !== "longjmp") throw e;
  16924. Module["setThrew"](1, 0);
  16925. }
  16926. }
  16927. function invoke_vid(index, a1, a2) {
  16928. var sp = stackSave();
  16929. try {
  16930. Module["dynCall_vid"](index, a1, a2);
  16931. } catch (e) {
  16932. stackRestore(sp);
  16933. if (typeof e !== "number" && e !== "longjmp") throw e;
  16934. Module["setThrew"](1, 0);
  16935. }
  16936. }
  16937. function invoke_vidi(index, a1, a2, a3) {
  16938. var sp = stackSave();
  16939. try {
  16940. Module["dynCall_vidi"](index, a1, a2, a3);
  16941. } catch (e) {
  16942. stackRestore(sp);
  16943. if (typeof e !== "number" && e !== "longjmp") throw e;
  16944. Module["setThrew"](1, 0);
  16945. }
  16946. }
  16947. function invoke_vif(index, a1, a2) {
  16948. var sp = stackSave();
  16949. try {
  16950. Module["dynCall_vif"](index, a1, a2);
  16951. } catch (e) {
  16952. stackRestore(sp);
  16953. if (typeof e !== "number" && e !== "longjmp") throw e;
  16954. Module["setThrew"](1, 0);
  16955. }
  16956. }
  16957. function invoke_viff(index, a1, a2, a3) {
  16958. var sp = stackSave();
  16959. try {
  16960. Module["dynCall_viff"](index, a1, a2, a3);
  16961. } catch (e) {
  16962. stackRestore(sp);
  16963. if (typeof e !== "number" && e !== "longjmp") throw e;
  16964. Module["setThrew"](1, 0);
  16965. }
  16966. }
  16967. function invoke_vifff(index, a1, a2, a3, a4) {
  16968. var sp = stackSave();
  16969. try {
  16970. Module["dynCall_vifff"](index, a1, a2, a3, a4);
  16971. } catch (e) {
  16972. stackRestore(sp);
  16973. if (typeof e !== "number" && e !== "longjmp") throw e;
  16974. Module["setThrew"](1, 0);
  16975. }
  16976. }
  16977. function invoke_viffff(index, a1, a2, a3, a4, a5) {
  16978. var sp = stackSave();
  16979. try {
  16980. Module["dynCall_viffff"](index, a1, a2, a3, a4, a5);
  16981. } catch (e) {
  16982. stackRestore(sp);
  16983. if (typeof e !== "number" && e !== "longjmp") throw e;
  16984. Module["setThrew"](1, 0);
  16985. }
  16986. }
  16987. function invoke_viffffi(index, a1, a2, a3, a4, a5, a6) {
  16988. var sp = stackSave();
  16989. try {
  16990. Module["dynCall_viffffi"](index, a1, a2, a3, a4, a5, a6);
  16991. } catch (e) {
  16992. stackRestore(sp);
  16993. if (typeof e !== "number" && e !== "longjmp") throw e;
  16994. Module["setThrew"](1, 0);
  16995. }
  16996. }
  16997. function invoke_viffffii(index, a1, a2, a3, a4, a5, a6, a7) {
  16998. var sp = stackSave();
  16999. try {
  17000. Module["dynCall_viffffii"](index, a1, a2, a3, a4, a5, a6, a7);
  17001. } catch (e) {
  17002. stackRestore(sp);
  17003. if (typeof e !== "number" && e !== "longjmp") throw e;
  17004. Module["setThrew"](1, 0);
  17005. }
  17006. }
  17007. function invoke_viffffiifffiiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) {
  17008. var sp = stackSave();
  17009. try {
  17010. Module["dynCall_viffffiifffiiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16);
  17011. } catch (e) {
  17012. stackRestore(sp);
  17013. if (typeof e !== "number" && e !== "longjmp") throw e;
  17014. Module["setThrew"](1, 0);
  17015. }
  17016. }
  17017. function invoke_viffffiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17018. var sp = stackSave();
  17019. try {
  17020. Module["dynCall_viffffiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17021. } catch (e) {
  17022. stackRestore(sp);
  17023. if (typeof e !== "number" && e !== "longjmp") throw e;
  17024. Module["setThrew"](1, 0);
  17025. }
  17026. }
  17027. function invoke_vifffi(index, a1, a2, a3, a4, a5) {
  17028. var sp = stackSave();
  17029. try {
  17030. Module["dynCall_vifffi"](index, a1, a2, a3, a4, a5);
  17031. } catch (e) {
  17032. stackRestore(sp);
  17033. if (typeof e !== "number" && e !== "longjmp") throw e;
  17034. Module["setThrew"](1, 0);
  17035. }
  17036. }
  17037. function invoke_vifffii(index, a1, a2, a3, a4, a5, a6) {
  17038. var sp = stackSave();
  17039. try {
  17040. Module["dynCall_vifffii"](index, a1, a2, a3, a4, a5, a6);
  17041. } catch (e) {
  17042. stackRestore(sp);
  17043. if (typeof e !== "number" && e !== "longjmp") throw e;
  17044. Module["setThrew"](1, 0);
  17045. }
  17046. }
  17047. function invoke_viffi(index, a1, a2, a3, a4) {
  17048. var sp = stackSave();
  17049. try {
  17050. Module["dynCall_viffi"](index, a1, a2, a3, a4);
  17051. } catch (e) {
  17052. stackRestore(sp);
  17053. if (typeof e !== "number" && e !== "longjmp") throw e;
  17054. Module["setThrew"](1, 0);
  17055. }
  17056. }
  17057. function invoke_viffii(index, a1, a2, a3, a4, a5) {
  17058. var sp = stackSave();
  17059. try {
  17060. Module["dynCall_viffii"](index, a1, a2, a3, a4, a5);
  17061. } catch (e) {
  17062. stackRestore(sp);
  17063. if (typeof e !== "number" && e !== "longjmp") throw e;
  17064. Module["setThrew"](1, 0);
  17065. }
  17066. }
  17067. function invoke_viffiifffffiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  17068. var sp = stackSave();
  17069. try {
  17070. Module["dynCall_viffiifffffiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  17071. } catch (e) {
  17072. stackRestore(sp);
  17073. if (typeof e !== "number" && e !== "longjmp") throw e;
  17074. Module["setThrew"](1, 0);
  17075. }
  17076. }
  17077. function invoke_viffiii(index, a1, a2, a3, a4, a5, a6) {
  17078. var sp = stackSave();
  17079. try {
  17080. Module["dynCall_viffiii"](index, a1, a2, a3, a4, a5, a6);
  17081. } catch (e) {
  17082. stackRestore(sp);
  17083. if (typeof e !== "number" && e !== "longjmp") throw e;
  17084. Module["setThrew"](1, 0);
  17085. }
  17086. }
  17087. function invoke_viffiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17088. var sp = stackSave();
  17089. try {
  17090. Module["dynCall_viffiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17091. } catch (e) {
  17092. stackRestore(sp);
  17093. if (typeof e !== "number" && e !== "longjmp") throw e;
  17094. Module["setThrew"](1, 0);
  17095. }
  17096. }
  17097. function invoke_vifi(index, a1, a2, a3) {
  17098. var sp = stackSave();
  17099. try {
  17100. Module["dynCall_vifi"](index, a1, a2, a3);
  17101. } catch (e) {
  17102. stackRestore(sp);
  17103. if (typeof e !== "number" && e !== "longjmp") throw e;
  17104. Module["setThrew"](1, 0);
  17105. }
  17106. }
  17107. function invoke_vifii(index, a1, a2, a3, a4) {
  17108. var sp = stackSave();
  17109. try {
  17110. Module["dynCall_vifii"](index, a1, a2, a3, a4);
  17111. } catch (e) {
  17112. stackRestore(sp);
  17113. if (typeof e !== "number" && e !== "longjmp") throw e;
  17114. Module["setThrew"](1, 0);
  17115. }
  17116. }
  17117. function invoke_vifiiii(index, a1, a2, a3, a4, a5, a6) {
  17118. var sp = stackSave();
  17119. try {
  17120. Module["dynCall_vifiiii"](index, a1, a2, a3, a4, a5, a6);
  17121. } catch (e) {
  17122. stackRestore(sp);
  17123. if (typeof e !== "number" && e !== "longjmp") throw e;
  17124. Module["setThrew"](1, 0);
  17125. }
  17126. }
  17127. function invoke_vifijii(index, a1, a2, a3, a4, a5, a6, a7) {
  17128. var sp = stackSave();
  17129. try {
  17130. Module["dynCall_vifijii"](index, a1, a2, a3, a4, a5, a6, a7);
  17131. } catch (e) {
  17132. stackRestore(sp);
  17133. if (typeof e !== "number" && e !== "longjmp") throw e;
  17134. Module["setThrew"](1, 0);
  17135. }
  17136. }
  17137. function invoke_vii(index, a1, a2) {
  17138. var sp = stackSave();
  17139. try {
  17140. Module["dynCall_vii"](index, a1, a2);
  17141. } catch (e) {
  17142. stackRestore(sp);
  17143. if (typeof e !== "number" && e !== "longjmp") throw e;
  17144. Module["setThrew"](1, 0);
  17145. }
  17146. }
  17147. function invoke_viid(index, a1, a2, a3) {
  17148. var sp = stackSave();
  17149. try {
  17150. Module["dynCall_viid"](index, a1, a2, a3);
  17151. } catch (e) {
  17152. stackRestore(sp);
  17153. if (typeof e !== "number" && e !== "longjmp") throw e;
  17154. Module["setThrew"](1, 0);
  17155. }
  17156. }
  17157. function invoke_viidi(index, a1, a2, a3, a4) {
  17158. var sp = stackSave();
  17159. try {
  17160. Module["dynCall_viidi"](index, a1, a2, a3, a4);
  17161. } catch (e) {
  17162. stackRestore(sp);
  17163. if (typeof e !== "number" && e !== "longjmp") throw e;
  17164. Module["setThrew"](1, 0);
  17165. }
  17166. }
  17167. function invoke_viidii(index, a1, a2, a3, a4, a5) {
  17168. var sp = stackSave();
  17169. try {
  17170. Module["dynCall_viidii"](index, a1, a2, a3, a4, a5);
  17171. } catch (e) {
  17172. stackRestore(sp);
  17173. if (typeof e !== "number" && e !== "longjmp") throw e;
  17174. Module["setThrew"](1, 0);
  17175. }
  17176. }
  17177. function invoke_viif(index, a1, a2, a3) {
  17178. var sp = stackSave();
  17179. try {
  17180. Module["dynCall_viif"](index, a1, a2, a3);
  17181. } catch (e) {
  17182. stackRestore(sp);
  17183. if (typeof e !== "number" && e !== "longjmp") throw e;
  17184. Module["setThrew"](1, 0);
  17185. }
  17186. }
  17187. function invoke_viiff(index, a1, a2, a3, a4) {
  17188. var sp = stackSave();
  17189. try {
  17190. Module["dynCall_viiff"](index, a1, a2, a3, a4);
  17191. } catch (e) {
  17192. stackRestore(sp);
  17193. if (typeof e !== "number" && e !== "longjmp") throw e;
  17194. Module["setThrew"](1, 0);
  17195. }
  17196. }
  17197. function invoke_viifff(index, a1, a2, a3, a4, a5) {
  17198. var sp = stackSave();
  17199. try {
  17200. Module["dynCall_viifff"](index, a1, a2, a3, a4, a5);
  17201. } catch (e) {
  17202. stackRestore(sp);
  17203. if (typeof e !== "number" && e !== "longjmp") throw e;
  17204. Module["setThrew"](1, 0);
  17205. }
  17206. }
  17207. function invoke_viifffi(index, a1, a2, a3, a4, a5, a6) {
  17208. var sp = stackSave();
  17209. try {
  17210. Module["dynCall_viifffi"](index, a1, a2, a3, a4, a5, a6);
  17211. } catch (e) {
  17212. stackRestore(sp);
  17213. if (typeof e !== "number" && e !== "longjmp") throw e;
  17214. Module["setThrew"](1, 0);
  17215. }
  17216. }
  17217. function invoke_viiffi(index, a1, a2, a3, a4, a5) {
  17218. var sp = stackSave();
  17219. try {
  17220. Module["dynCall_viiffi"](index, a1, a2, a3, a4, a5);
  17221. } catch (e) {
  17222. stackRestore(sp);
  17223. if (typeof e !== "number" && e !== "longjmp") throw e;
  17224. Module["setThrew"](1, 0);
  17225. }
  17226. }
  17227. function invoke_viiffii(index, a1, a2, a3, a4, a5, a6) {
  17228. var sp = stackSave();
  17229. try {
  17230. Module["dynCall_viiffii"](index, a1, a2, a3, a4, a5, a6);
  17231. } catch (e) {
  17232. stackRestore(sp);
  17233. if (typeof e !== "number" && e !== "longjmp") throw e;
  17234. Module["setThrew"](1, 0);
  17235. }
  17236. }
  17237. function invoke_viifi(index, a1, a2, a3, a4) {
  17238. var sp = stackSave();
  17239. try {
  17240. Module["dynCall_viifi"](index, a1, a2, a3, a4);
  17241. } catch (e) {
  17242. stackRestore(sp);
  17243. if (typeof e !== "number" && e !== "longjmp") throw e;
  17244. Module["setThrew"](1, 0);
  17245. }
  17246. }
  17247. function invoke_viifii(index, a1, a2, a3, a4, a5) {
  17248. var sp = stackSave();
  17249. try {
  17250. Module["dynCall_viifii"](index, a1, a2, a3, a4, a5);
  17251. } catch (e) {
  17252. stackRestore(sp);
  17253. if (typeof e !== "number" && e !== "longjmp") throw e;
  17254. Module["setThrew"](1, 0);
  17255. }
  17256. }
  17257. function invoke_viifiii(index, a1, a2, a3, a4, a5, a6) {
  17258. var sp = stackSave();
  17259. try {
  17260. Module["dynCall_viifiii"](index, a1, a2, a3, a4, a5, a6);
  17261. } catch (e) {
  17262. stackRestore(sp);
  17263. if (typeof e !== "number" && e !== "longjmp") throw e;
  17264. Module["setThrew"](1, 0);
  17265. }
  17266. }
  17267. function invoke_viifiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  17268. var sp = stackSave();
  17269. try {
  17270. Module["dynCall_viifiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  17271. } catch (e) {
  17272. stackRestore(sp);
  17273. if (typeof e !== "number" && e !== "longjmp") throw e;
  17274. Module["setThrew"](1, 0);
  17275. }
  17276. }
  17277. function invoke_viii(index, a1, a2, a3) {
  17278. var sp = stackSave();
  17279. try {
  17280. Module["dynCall_viii"](index, a1, a2, a3);
  17281. } catch (e) {
  17282. stackRestore(sp);
  17283. if (typeof e !== "number" && e !== "longjmp") throw e;
  17284. Module["setThrew"](1, 0);
  17285. }
  17286. }
  17287. function invoke_viiidi(index, a1, a2, a3, a4, a5) {
  17288. var sp = stackSave();
  17289. try {
  17290. Module["dynCall_viiidi"](index, a1, a2, a3, a4, a5);
  17291. } catch (e) {
  17292. stackRestore(sp);
  17293. if (typeof e !== "number" && e !== "longjmp") throw e;
  17294. Module["setThrew"](1, 0);
  17295. }
  17296. }
  17297. function invoke_viiifffi(index, a1, a2, a3, a4, a5, a6, a7) {
  17298. var sp = stackSave();
  17299. try {
  17300. Module["dynCall_viiifffi"](index, a1, a2, a3, a4, a5, a6, a7);
  17301. } catch (e) {
  17302. stackRestore(sp);
  17303. if (typeof e !== "number" && e !== "longjmp") throw e;
  17304. Module["setThrew"](1, 0);
  17305. }
  17306. }
  17307. function invoke_viiiffi(index, a1, a2, a3, a4, a5, a6) {
  17308. var sp = stackSave();
  17309. try {
  17310. Module["dynCall_viiiffi"](index, a1, a2, a3, a4, a5, a6);
  17311. } catch (e) {
  17312. stackRestore(sp);
  17313. if (typeof e !== "number" && e !== "longjmp") throw e;
  17314. Module["setThrew"](1, 0);
  17315. }
  17316. }
  17317. function invoke_viiiffii(index, a1, a2, a3, a4, a5, a6, a7) {
  17318. var sp = stackSave();
  17319. try {
  17320. Module["dynCall_viiiffii"](index, a1, a2, a3, a4, a5, a6, a7);
  17321. } catch (e) {
  17322. stackRestore(sp);
  17323. if (typeof e !== "number" && e !== "longjmp") throw e;
  17324. Module["setThrew"](1, 0);
  17325. }
  17326. }
  17327. function invoke_viiifi(index, a1, a2, a3, a4, a5) {
  17328. var sp = stackSave();
  17329. try {
  17330. Module["dynCall_viiifi"](index, a1, a2, a3, a4, a5);
  17331. } catch (e) {
  17332. stackRestore(sp);
  17333. if (typeof e !== "number" && e !== "longjmp") throw e;
  17334. Module["setThrew"](1, 0);
  17335. }
  17336. }
  17337. function invoke_viiifii(index, a1, a2, a3, a4, a5, a6) {
  17338. var sp = stackSave();
  17339. try {
  17340. Module["dynCall_viiifii"](index, a1, a2, a3, a4, a5, a6);
  17341. } catch (e) {
  17342. stackRestore(sp);
  17343. if (typeof e !== "number" && e !== "longjmp") throw e;
  17344. Module["setThrew"](1, 0);
  17345. }
  17346. }
  17347. function invoke_viiifiii(index, a1, a2, a3, a4, a5, a6, a7) {
  17348. var sp = stackSave();
  17349. try {
  17350. Module["dynCall_viiifiii"](index, a1, a2, a3, a4, a5, a6, a7);
  17351. } catch (e) {
  17352. stackRestore(sp);
  17353. if (typeof e !== "number" && e !== "longjmp") throw e;
  17354. Module["setThrew"](1, 0);
  17355. }
  17356. }
  17357. function invoke_viiifiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17358. var sp = stackSave();
  17359. try {
  17360. Module["dynCall_viiifiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17361. } catch (e) {
  17362. stackRestore(sp);
  17363. if (typeof e !== "number" && e !== "longjmp") throw e;
  17364. Module["setThrew"](1, 0);
  17365. }
  17366. }
  17367. function invoke_viiii(index, a1, a2, a3, a4) {
  17368. var sp = stackSave();
  17369. try {
  17370. Module["dynCall_viiii"](index, a1, a2, a3, a4);
  17371. } catch (e) {
  17372. stackRestore(sp);
  17373. if (typeof e !== "number" && e !== "longjmp") throw e;
  17374. Module["setThrew"](1, 0);
  17375. }
  17376. }
  17377. function invoke_viiiif(index, a1, a2, a3, a4, a5) {
  17378. var sp = stackSave();
  17379. try {
  17380. Module["dynCall_viiiif"](index, a1, a2, a3, a4, a5);
  17381. } catch (e) {
  17382. stackRestore(sp);
  17383. if (typeof e !== "number" && e !== "longjmp") throw e;
  17384. Module["setThrew"](1, 0);
  17385. }
  17386. }
  17387. function invoke_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) {
  17388. var sp = stackSave();
  17389. try {
  17390. Module["dynCall_viiiifii"](index, a1, a2, a3, a4, a5, a6, a7);
  17391. } catch (e) {
  17392. stackRestore(sp);
  17393. if (typeof e !== "number" && e !== "longjmp") throw e;
  17394. Module["setThrew"](1, 0);
  17395. }
  17396. }
  17397. function invoke_viiiifiiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  17398. var sp = stackSave();
  17399. try {
  17400. Module["dynCall_viiiifiiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  17401. } catch (e) {
  17402. stackRestore(sp);
  17403. if (typeof e !== "number" && e !== "longjmp") throw e;
  17404. Module["setThrew"](1, 0);
  17405. }
  17406. }
  17407. function invoke_viiiii(index, a1, a2, a3, a4, a5) {
  17408. var sp = stackSave();
  17409. try {
  17410. Module["dynCall_viiiii"](index, a1, a2, a3, a4, a5);
  17411. } catch (e) {
  17412. stackRestore(sp);
  17413. if (typeof e !== "number" && e !== "longjmp") throw e;
  17414. Module["setThrew"](1, 0);
  17415. }
  17416. }
  17417. function invoke_viiiiif(index, a1, a2, a3, a4, a5, a6) {
  17418. var sp = stackSave();
  17419. try {
  17420. Module["dynCall_viiiiif"](index, a1, a2, a3, a4, a5, a6);
  17421. } catch (e) {
  17422. stackRestore(sp);
  17423. if (typeof e !== "number" && e !== "longjmp") throw e;
  17424. Module["setThrew"](1, 0);
  17425. }
  17426. }
  17427. function invoke_viiiiiffi(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17428. var sp = stackSave();
  17429. try {
  17430. Module["dynCall_viiiiiffi"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17431. } catch (e) {
  17432. stackRestore(sp);
  17433. if (typeof e !== "number" && e !== "longjmp") throw e;
  17434. Module["setThrew"](1, 0);
  17435. }
  17436. }
  17437. function invoke_viiiiiffii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17438. var sp = stackSave();
  17439. try {
  17440. Module["dynCall_viiiiiffii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17441. } catch (e) {
  17442. stackRestore(sp);
  17443. if (typeof e !== "number" && e !== "longjmp") throw e;
  17444. Module["setThrew"](1, 0);
  17445. }
  17446. }
  17447. function invoke_viiiiifi(index, a1, a2, a3, a4, a5, a6, a7) {
  17448. var sp = stackSave();
  17449. try {
  17450. Module["dynCall_viiiiifi"](index, a1, a2, a3, a4, a5, a6, a7);
  17451. } catch (e) {
  17452. stackRestore(sp);
  17453. if (typeof e !== "number" && e !== "longjmp") throw e;
  17454. Module["setThrew"](1, 0);
  17455. }
  17456. }
  17457. function invoke_viiiiii(index, a1, a2, a3, a4, a5, a6) {
  17458. var sp = stackSave();
  17459. try {
  17460. Module["dynCall_viiiiii"](index, a1, a2, a3, a4, a5, a6);
  17461. } catch (e) {
  17462. stackRestore(sp);
  17463. if (typeof e !== "number" && e !== "longjmp") throw e;
  17464. Module["setThrew"](1, 0);
  17465. }
  17466. }
  17467. function invoke_viiiiiif(index, a1, a2, a3, a4, a5, a6, a7) {
  17468. var sp = stackSave();
  17469. try {
  17470. Module["dynCall_viiiiiif"](index, a1, a2, a3, a4, a5, a6, a7);
  17471. } catch (e) {
  17472. stackRestore(sp);
  17473. if (typeof e !== "number" && e !== "longjmp") throw e;
  17474. Module["setThrew"](1, 0);
  17475. }
  17476. }
  17477. function invoke_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  17478. var sp = stackSave();
  17479. try {
  17480. Module["dynCall_viiiiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  17481. } catch (e) {
  17482. stackRestore(sp);
  17483. if (typeof e !== "number" && e !== "longjmp") throw e;
  17484. Module["setThrew"](1, 0);
  17485. }
  17486. }
  17487. function invoke_viiiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17488. var sp = stackSave();
  17489. try {
  17490. Module["dynCall_viiiiiiifi"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17491. } catch (e) {
  17492. stackRestore(sp);
  17493. if (typeof e !== "number" && e !== "longjmp") throw e;
  17494. Module["setThrew"](1, 0);
  17495. }
  17496. }
  17497. function invoke_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17498. var sp = stackSave();
  17499. try {
  17500. Module["dynCall_viiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17501. } catch (e) {
  17502. stackRestore(sp);
  17503. if (typeof e !== "number" && e !== "longjmp") throw e;
  17504. Module["setThrew"](1, 0);
  17505. }
  17506. }
  17507. function invoke_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17508. var sp = stackSave();
  17509. try {
  17510. Module["dynCall_viiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17511. } catch (e) {
  17512. stackRestore(sp);
  17513. if (typeof e !== "number" && e !== "longjmp") throw e;
  17514. Module["setThrew"](1, 0);
  17515. }
  17516. }
  17517. function invoke_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  17518. var sp = stackSave();
  17519. try {
  17520. Module["dynCall_viiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  17521. } catch (e) {
  17522. stackRestore(sp);
  17523. if (typeof e !== "number" && e !== "longjmp") throw e;
  17524. Module["setThrew"](1, 0);
  17525. }
  17526. }
  17527. function invoke_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  17528. var sp = stackSave();
  17529. try {
  17530. Module["dynCall_viiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  17531. } catch (e) {
  17532. stackRestore(sp);
  17533. if (typeof e !== "number" && e !== "longjmp") throw e;
  17534. Module["setThrew"](1, 0);
  17535. }
  17536. }
  17537. function invoke_viiiiiiiiiiifii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) {
  17538. var sp = stackSave();
  17539. try {
  17540. Module["dynCall_viiiiiiiiiiifii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
  17541. } catch (e) {
  17542. stackRestore(sp);
  17543. if (typeof e !== "number" && e !== "longjmp") throw e;
  17544. Module["setThrew"](1, 0);
  17545. }
  17546. }
  17547. function invoke_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  17548. var sp = stackSave();
  17549. try {
  17550. Module["dynCall_viiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  17551. } catch (e) {
  17552. stackRestore(sp);
  17553. if (typeof e !== "number" && e !== "longjmp") throw e;
  17554. Module["setThrew"](1, 0);
  17555. }
  17556. }
  17557. function invoke_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) {
  17558. var sp = stackSave();
  17559. try {
  17560. Module["dynCall_viiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
  17561. } catch (e) {
  17562. stackRestore(sp);
  17563. if (typeof e !== "number" && e !== "longjmp") throw e;
  17564. Module["setThrew"](1, 0);
  17565. }
  17566. }
  17567. function invoke_viiiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) {
  17568. var sp = stackSave();
  17569. try {
  17570. Module["dynCall_viiiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15);
  17571. } catch (e) {
  17572. stackRestore(sp);
  17573. if (typeof e !== "number" && e !== "longjmp") throw e;
  17574. Module["setThrew"](1, 0);
  17575. }
  17576. }
  17577. function invoke_viiiiiiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) {
  17578. var sp = stackSave();
  17579. try {
  17580. Module["dynCall_viiiiiiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18);
  17581. } catch (e) {
  17582. stackRestore(sp);
  17583. if (typeof e !== "number" && e !== "longjmp") throw e;
  17584. Module["setThrew"](1, 0);
  17585. }
  17586. }
  17587. function invoke_viiiiiji(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17588. var sp = stackSave();
  17589. try {
  17590. Module["dynCall_viiiiiji"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17591. } catch (e) {
  17592. stackRestore(sp);
  17593. if (typeof e !== "number" && e !== "longjmp") throw e;
  17594. Module["setThrew"](1, 0);
  17595. }
  17596. }
  17597. function invoke_viiiij(index, a1, a2, a3, a4, a5, a6) {
  17598. var sp = stackSave();
  17599. try {
  17600. Module["dynCall_viiiij"](index, a1, a2, a3, a4, a5, a6);
  17601. } catch (e) {
  17602. stackRestore(sp);
  17603. if (typeof e !== "number" && e !== "longjmp") throw e;
  17604. Module["setThrew"](1, 0);
  17605. }
  17606. }
  17607. function invoke_viiiijiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  17608. var sp = stackSave();
  17609. try {
  17610. Module["dynCall_viiiijiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  17611. } catch (e) {
  17612. stackRestore(sp);
  17613. if (typeof e !== "number" && e !== "longjmp") throw e;
  17614. Module["setThrew"](1, 0);
  17615. }
  17616. }
  17617. function invoke_viiiji(index, a1, a2, a3, a4, a5, a6) {
  17618. var sp = stackSave();
  17619. try {
  17620. Module["dynCall_viiiji"](index, a1, a2, a3, a4, a5, a6);
  17621. } catch (e) {
  17622. stackRestore(sp);
  17623. if (typeof e !== "number" && e !== "longjmp") throw e;
  17624. Module["setThrew"](1, 0);
  17625. }
  17626. }
  17627. function invoke_viiijji(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17628. var sp = stackSave();
  17629. try {
  17630. Module["dynCall_viiijji"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17631. } catch (e) {
  17632. stackRestore(sp);
  17633. if (typeof e !== "number" && e !== "longjmp") throw e;
  17634. Module["setThrew"](1, 0);
  17635. }
  17636. }
  17637. function invoke_viij(index, a1, a2, a3, a4) {
  17638. var sp = stackSave();
  17639. try {
  17640. Module["dynCall_viij"](index, a1, a2, a3, a4);
  17641. } catch (e) {
  17642. stackRestore(sp);
  17643. if (typeof e !== "number" && e !== "longjmp") throw e;
  17644. Module["setThrew"](1, 0);
  17645. }
  17646. }
  17647. function invoke_viiji(index, a1, a2, a3, a4, a5) {
  17648. var sp = stackSave();
  17649. try {
  17650. Module["dynCall_viiji"](index, a1, a2, a3, a4, a5);
  17651. } catch (e) {
  17652. stackRestore(sp);
  17653. if (typeof e !== "number" && e !== "longjmp") throw e;
  17654. Module["setThrew"](1, 0);
  17655. }
  17656. }
  17657. function invoke_viijii(index, a1, a2, a3, a4, a5, a6) {
  17658. var sp = stackSave();
  17659. try {
  17660. Module["dynCall_viijii"](index, a1, a2, a3, a4, a5, a6);
  17661. } catch (e) {
  17662. stackRestore(sp);
  17663. if (typeof e !== "number" && e !== "longjmp") throw e;
  17664. Module["setThrew"](1, 0);
  17665. }
  17666. }
  17667. function invoke_viijiijiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  17668. var sp = stackSave();
  17669. try {
  17670. Module["dynCall_viijiijiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  17671. } catch (e) {
  17672. stackRestore(sp);
  17673. if (typeof e !== "number" && e !== "longjmp") throw e;
  17674. Module["setThrew"](1, 0);
  17675. }
  17676. }
  17677. function invoke_viijijii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17678. var sp = stackSave();
  17679. try {
  17680. Module["dynCall_viijijii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17681. } catch (e) {
  17682. stackRestore(sp);
  17683. if (typeof e !== "number" && e !== "longjmp") throw e;
  17684. Module["setThrew"](1, 0);
  17685. }
  17686. }
  17687. function invoke_viijijiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  17688. var sp = stackSave();
  17689. try {
  17690. Module["dynCall_viijijiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  17691. } catch (e) {
  17692. stackRestore(sp);
  17693. if (typeof e !== "number" && e !== "longjmp") throw e;
  17694. Module["setThrew"](1, 0);
  17695. }
  17696. }
  17697. function invoke_viijijj(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17698. var sp = stackSave();
  17699. try {
  17700. Module["dynCall_viijijj"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17701. } catch (e) {
  17702. stackRestore(sp);
  17703. if (typeof e !== "number" && e !== "longjmp") throw e;
  17704. Module["setThrew"](1, 0);
  17705. }
  17706. }
  17707. function invoke_viijj(index, a1, a2, a3, a4, a5, a6) {
  17708. var sp = stackSave();
  17709. try {
  17710. Module["dynCall_viijj"](index, a1, a2, a3, a4, a5, a6);
  17711. } catch (e) {
  17712. stackRestore(sp);
  17713. if (typeof e !== "number" && e !== "longjmp") throw e;
  17714. Module["setThrew"](1, 0);
  17715. }
  17716. }
  17717. function invoke_viijji(index, a1, a2, a3, a4, a5, a6, a7) {
  17718. var sp = stackSave();
  17719. try {
  17720. Module["dynCall_viijji"](index, a1, a2, a3, a4, a5, a6, a7);
  17721. } catch (e) {
  17722. stackRestore(sp);
  17723. if (typeof e !== "number" && e !== "longjmp") throw e;
  17724. Module["setThrew"](1, 0);
  17725. }
  17726. }
  17727. function invoke_viijjii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17728. var sp = stackSave();
  17729. try {
  17730. Module["dynCall_viijjii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17731. } catch (e) {
  17732. stackRestore(sp);
  17733. if (typeof e !== "number" && e !== "longjmp") throw e;
  17734. Module["setThrew"](1, 0);
  17735. }
  17736. }
  17737. function invoke_viijjiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17738. var sp = stackSave();
  17739. try {
  17740. Module["dynCall_viijjiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17741. } catch (e) {
  17742. stackRestore(sp);
  17743. if (typeof e !== "number" && e !== "longjmp") throw e;
  17744. Module["setThrew"](1, 0);
  17745. }
  17746. }
  17747. function invoke_viijjji(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17748. var sp = stackSave();
  17749. try {
  17750. Module["dynCall_viijjji"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17751. } catch (e) {
  17752. stackRestore(sp);
  17753. if (typeof e !== "number" && e !== "longjmp") throw e;
  17754. Module["setThrew"](1, 0);
  17755. }
  17756. }
  17757. function invoke_vij(index, a1, a2, a3) {
  17758. var sp = stackSave();
  17759. try {
  17760. Module["dynCall_vij"](index, a1, a2, a3);
  17761. } catch (e) {
  17762. stackRestore(sp);
  17763. if (typeof e !== "number" && e !== "longjmp") throw e;
  17764. Module["setThrew"](1, 0);
  17765. }
  17766. }
  17767. function invoke_viji(index, a1, a2, a3, a4) {
  17768. var sp = stackSave();
  17769. try {
  17770. Module["dynCall_viji"](index, a1, a2, a3, a4);
  17771. } catch (e) {
  17772. stackRestore(sp);
  17773. if (typeof e !== "number" && e !== "longjmp") throw e;
  17774. Module["setThrew"](1, 0);
  17775. }
  17776. }
  17777. function invoke_vijii(index, a1, a2, a3, a4, a5) {
  17778. var sp = stackSave();
  17779. try {
  17780. Module["dynCall_vijii"](index, a1, a2, a3, a4, a5);
  17781. } catch (e) {
  17782. stackRestore(sp);
  17783. if (typeof e !== "number" && e !== "longjmp") throw e;
  17784. Module["setThrew"](1, 0);
  17785. }
  17786. }
  17787. function invoke_vijiii(index, a1, a2, a3, a4, a5, a6) {
  17788. var sp = stackSave();
  17789. try {
  17790. Module["dynCall_vijiii"](index, a1, a2, a3, a4, a5, a6);
  17791. } catch (e) {
  17792. stackRestore(sp);
  17793. if (typeof e !== "number" && e !== "longjmp") throw e;
  17794. Module["setThrew"](1, 0);
  17795. }
  17796. }
  17797. function invoke_vijiji(index, a1, a2, a3, a4, a5, a6, a7) {
  17798. var sp = stackSave();
  17799. try {
  17800. Module["dynCall_vijiji"](index, a1, a2, a3, a4, a5, a6, a7);
  17801. } catch (e) {
  17802. stackRestore(sp);
  17803. if (typeof e !== "number" && e !== "longjmp") throw e;
  17804. Module["setThrew"](1, 0);
  17805. }
  17806. }
  17807. function invoke_vijijji(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17808. var sp = stackSave();
  17809. try {
  17810. Module["dynCall_vijijji"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17811. } catch (e) {
  17812. stackRestore(sp);
  17813. if (typeof e !== "number" && e !== "longjmp") throw e;
  17814. Module["setThrew"](1, 0);
  17815. }
  17816. }
  17817. function invoke_vijji(index, a1, a2, a3, a4, a5, a6) {
  17818. var sp = stackSave();
  17819. try {
  17820. Module["dynCall_vijji"](index, a1, a2, a3, a4, a5, a6);
  17821. } catch (e) {
  17822. stackRestore(sp);
  17823. if (typeof e !== "number" && e !== "longjmp") throw e;
  17824. Module["setThrew"](1, 0);
  17825. }
  17826. }
  17827. function invoke_vijjii(index, a1, a2, a3, a4, a5, a6, a7) {
  17828. var sp = stackSave();
  17829. try {
  17830. Module["dynCall_vijjii"](index, a1, a2, a3, a4, a5, a6, a7);
  17831. } catch (e) {
  17832. stackRestore(sp);
  17833. if (typeof e !== "number" && e !== "longjmp") throw e;
  17834. Module["setThrew"](1, 0);
  17835. }
  17836. }
  17837. function invoke_vijjji(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17838. var sp = stackSave();
  17839. try {
  17840. Module["dynCall_vijjji"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17841. } catch (e) {
  17842. stackRestore(sp);
  17843. if (typeof e !== "number" && e !== "longjmp") throw e;
  17844. Module["setThrew"](1, 0);
  17845. }
  17846. }
  17847. function invoke_vji(index, a1, a2, a3) {
  17848. var sp = stackSave();
  17849. try {
  17850. Module["dynCall_vji"](index, a1, a2, a3);
  17851. } catch (e) {
  17852. stackRestore(sp);
  17853. if (typeof e !== "number" && e !== "longjmp") throw e;
  17854. Module["setThrew"](1, 0);
  17855. }
  17856. }
  17857. function invoke_vjiiii(index, a1, a2, a3, a4, a5, a6) {
  17858. var sp = stackSave();
  17859. try {
  17860. Module["dynCall_vjiiii"](index, a1, a2, a3, a4, a5, a6);
  17861. } catch (e) {
  17862. stackRestore(sp);
  17863. if (typeof e !== "number" && e !== "longjmp") throw e;
  17864. Module["setThrew"](1, 0);
  17865. }
  17866. }
  17867. function invoke_vjji(index, a1, a2, a3, a4, a5) {
  17868. var sp = stackSave();
  17869. try {
  17870. Module["dynCall_vjji"](index, a1, a2, a3, a4, a5);
  17871. } catch (e) {
  17872. stackRestore(sp);
  17873. if (typeof e !== "number" && e !== "longjmp") throw e;
  17874. Module["setThrew"](1, 0);
  17875. }
  17876. }
  17877. Module.asmGlobalArg = {};
  17878. Module.asmLibraryArg = {
  17879. "abort": abort,
  17880. "assert": assert,
  17881. "enlargeMemory": enlargeMemory,
  17882. "getTotalMemory": getTotalMemory,
  17883. "abortOnCannotGrowMemory": abortOnCannotGrowMemory,
  17884. "abortStackOverflow": abortStackOverflow,
  17885. "nullFunc_dddi": nullFunc_dddi,
  17886. "nullFunc_ddi": nullFunc_ddi,
  17887. "nullFunc_dfi": nullFunc_dfi,
  17888. "nullFunc_di": nullFunc_di,
  17889. "nullFunc_diddi": nullFunc_diddi,
  17890. "nullFunc_didi": nullFunc_didi,
  17891. "nullFunc_dii": nullFunc_dii,
  17892. "nullFunc_diii": nullFunc_diii,
  17893. "nullFunc_diiii": nullFunc_diiii,
  17894. "nullFunc_dji": nullFunc_dji,
  17895. "nullFunc_f": nullFunc_f,
  17896. "nullFunc_fdi": nullFunc_fdi,
  17897. "nullFunc_ff": nullFunc_ff,
  17898. "nullFunc_fff": nullFunc_fff,
  17899. "nullFunc_ffffi": nullFunc_ffffi,
  17900. "nullFunc_fffi": nullFunc_fffi,
  17901. "nullFunc_fffifffi": nullFunc_fffifffi,
  17902. "nullFunc_ffi": nullFunc_ffi,
  17903. "nullFunc_fi": nullFunc_fi,
  17904. "nullFunc_fif": nullFunc_fif,
  17905. "nullFunc_fiff": nullFunc_fiff,
  17906. "nullFunc_fifffi": nullFunc_fifffi,
  17907. "nullFunc_fiffi": nullFunc_fiffi,
  17908. "nullFunc_fifi": nullFunc_fifi,
  17909. "nullFunc_fifii": nullFunc_fifii,
  17910. "nullFunc_fii": nullFunc_fii,
  17911. "nullFunc_fiif": nullFunc_fiif,
  17912. "nullFunc_fiifi": nullFunc_fiifi,
  17913. "nullFunc_fiifii": nullFunc_fiifii,
  17914. "nullFunc_fiii": nullFunc_fiii,
  17915. "nullFunc_fiiii": nullFunc_fiiii,
  17916. "nullFunc_fiiiiiifiifif": nullFunc_fiiiiiifiifif,
  17917. "nullFunc_fiiiiiifiiiif": nullFunc_fiiiiiifiiiif,
  17918. "nullFunc_fji": nullFunc_fji,
  17919. "nullFunc_i": nullFunc_i,
  17920. "nullFunc_idi": nullFunc_idi,
  17921. "nullFunc_idiii": nullFunc_idiii,
  17922. "nullFunc_ifffi": nullFunc_ifffi,
  17923. "nullFunc_iffi": nullFunc_iffi,
  17924. "nullFunc_ifi": nullFunc_ifi,
  17925. "nullFunc_ifiii": nullFunc_ifiii,
  17926. "nullFunc_ii": nullFunc_ii,
  17927. "nullFunc_iidi": nullFunc_iidi,
  17928. "nullFunc_iidii": nullFunc_iidii,
  17929. "nullFunc_iif": nullFunc_iif,
  17930. "nullFunc_iifff": nullFunc_iifff,
  17931. "nullFunc_iifffi": nullFunc_iifffi,
  17932. "nullFunc_iiffi": nullFunc_iiffi,
  17933. "nullFunc_iifi": nullFunc_iifi,
  17934. "nullFunc_iifii": nullFunc_iifii,
  17935. "nullFunc_iifiii": nullFunc_iifiii,
  17936. "nullFunc_iifiiiijii": nullFunc_iifiiiijii,
  17937. "nullFunc_iii": nullFunc_iii,
  17938. "nullFunc_iiif": nullFunc_iiif,
  17939. "nullFunc_iiiff": nullFunc_iiiff,
  17940. "nullFunc_iiifi": nullFunc_iiifi,
  17941. "nullFunc_iiifii": nullFunc_iiifii,
  17942. "nullFunc_iiifiii": nullFunc_iiifiii,
  17943. "nullFunc_iiifiiii": nullFunc_iiifiiii,
  17944. "nullFunc_iiii": nullFunc_iiii,
  17945. "nullFunc_iiiifffffi": nullFunc_iiiifffffi,
  17946. "nullFunc_iiiifffffii": nullFunc_iiiifffffii,
  17947. "nullFunc_iiiifffiii": nullFunc_iiiifffiii,
  17948. "nullFunc_iiiifi": nullFunc_iiiifi,
  17949. "nullFunc_iiiifii": nullFunc_iiiifii,
  17950. "nullFunc_iiiifiii": nullFunc_iiiifiii,
  17951. "nullFunc_iiiifiiii": nullFunc_iiiifiiii,
  17952. "nullFunc_iiiifiiiii": nullFunc_iiiifiiiii,
  17953. "nullFunc_iiiii": nullFunc_iiiii,
  17954. "nullFunc_iiiiifiii": nullFunc_iiiiifiii,
  17955. "nullFunc_iiiiifiiiiif": nullFunc_iiiiifiiiiif,
  17956. "nullFunc_iiiiii": nullFunc_iiiiii,
  17957. "nullFunc_iiiiiifff": nullFunc_iiiiiifff,
  17958. "nullFunc_iiiiiifffiiifiii": nullFunc_iiiiiifffiiifiii,
  17959. "nullFunc_iiiiiiffiiiiiiiiiffffiii": nullFunc_iiiiiiffiiiiiiiiiffffiii,
  17960. "nullFunc_iiiiiiffiiiiiiiiiffffiiii": nullFunc_iiiiiiffiiiiiiiiiffffiiii,
  17961. "nullFunc_iiiiiiffiiiiiiiiiiiiiii": nullFunc_iiiiiiffiiiiiiiiiiiiiii,
  17962. "nullFunc_iiiiiifiif": nullFunc_iiiiiifiif,
  17963. "nullFunc_iiiiiifiii": nullFunc_iiiiiifiii,
  17964. "nullFunc_iiiiiii": nullFunc_iiiiiii,
  17965. "nullFunc_iiiiiiifiif": nullFunc_iiiiiiifiif,
  17966. "nullFunc_iiiiiiii": nullFunc_iiiiiiii,
  17967. "nullFunc_iiiiiiiii": nullFunc_iiiiiiiii,
  17968. "nullFunc_iiiiiiiiii": nullFunc_iiiiiiiiii,
  17969. "nullFunc_iiiiiiiiiii": nullFunc_iiiiiiiiiii,
  17970. "nullFunc_iiiiiiiiiiii": nullFunc_iiiiiiiiiiii,
  17971. "nullFunc_iiiiiiiiiiiii": nullFunc_iiiiiiiiiiiii,
  17972. "nullFunc_iiiiiiiiiiiiii": nullFunc_iiiiiiiiiiiiii,
  17973. "nullFunc_iiiiiji": nullFunc_iiiiiji,
  17974. "nullFunc_iiiij": nullFunc_iiiij,
  17975. "nullFunc_iiiiji": nullFunc_iiiiji,
  17976. "nullFunc_iiiijii": nullFunc_iiiijii,
  17977. "nullFunc_iiiijiii": nullFunc_iiiijiii,
  17978. "nullFunc_iiij": nullFunc_iiij,
  17979. "nullFunc_iiiji": nullFunc_iiiji,
  17980. "nullFunc_iiijii": nullFunc_iiijii,
  17981. "nullFunc_iiijiii": nullFunc_iiijiii,
  17982. "nullFunc_iiijji": nullFunc_iiijji,
  17983. "nullFunc_iiijjiiii": nullFunc_iiijjiiii,
  17984. "nullFunc_iij": nullFunc_iij,
  17985. "nullFunc_iiji": nullFunc_iiji,
  17986. "nullFunc_iijii": nullFunc_iijii,
  17987. "nullFunc_iijiii": nullFunc_iijiii,
  17988. "nullFunc_iijji": nullFunc_iijji,
  17989. "nullFunc_iijjii": nullFunc_iijjii,
  17990. "nullFunc_iijjiii": nullFunc_iijjiii,
  17991. "nullFunc_iijjji": nullFunc_iijjji,
  17992. "nullFunc_ij": nullFunc_ij,
  17993. "nullFunc_iji": nullFunc_iji,
  17994. "nullFunc_ijiii": nullFunc_ijiii,
  17995. "nullFunc_ijj": nullFunc_ijj,
  17996. "nullFunc_ijji": nullFunc_ijji,
  17997. "nullFunc_j": nullFunc_j,
  17998. "nullFunc_jdi": nullFunc_jdi,
  17999. "nullFunc_jdii": nullFunc_jdii,
  18000. "nullFunc_jfi": nullFunc_jfi,
  18001. "nullFunc_ji": nullFunc_ji,
  18002. "nullFunc_jidi": nullFunc_jidi,
  18003. "nullFunc_jidii": nullFunc_jidii,
  18004. "nullFunc_jii": nullFunc_jii,
  18005. "nullFunc_jiii": nullFunc_jiii,
  18006. "nullFunc_jiiii": nullFunc_jiiii,
  18007. "nullFunc_jiiiii": nullFunc_jiiiii,
  18008. "nullFunc_jiiiiii": nullFunc_jiiiiii,
  18009. "nullFunc_jiiiiiiiiii": nullFunc_jiiiiiiiiii,
  18010. "nullFunc_jiiji": nullFunc_jiiji,
  18011. "nullFunc_jiji": nullFunc_jiji,
  18012. "nullFunc_jijii": nullFunc_jijii,
  18013. "nullFunc_jijiii": nullFunc_jijiii,
  18014. "nullFunc_jijji": nullFunc_jijji,
  18015. "nullFunc_jji": nullFunc_jji,
  18016. "nullFunc_v": nullFunc_v,
  18017. "nullFunc_vd": nullFunc_vd,
  18018. "nullFunc_vf": nullFunc_vf,
  18019. "nullFunc_vff": nullFunc_vff,
  18020. "nullFunc_vffff": nullFunc_vffff,
  18021. "nullFunc_vfi": nullFunc_vfi,
  18022. "nullFunc_vi": nullFunc_vi,
  18023. "nullFunc_vid": nullFunc_vid,
  18024. "nullFunc_vidi": nullFunc_vidi,
  18025. "nullFunc_vif": nullFunc_vif,
  18026. "nullFunc_viff": nullFunc_viff,
  18027. "nullFunc_vifff": nullFunc_vifff,
  18028. "nullFunc_viffff": nullFunc_viffff,
  18029. "nullFunc_viffffi": nullFunc_viffffi,
  18030. "nullFunc_viffffii": nullFunc_viffffii,
  18031. "nullFunc_viffffiifffiiiiif": nullFunc_viffffiifffiiiiif,
  18032. "nullFunc_viffffiii": nullFunc_viffffiii,
  18033. "nullFunc_vifffi": nullFunc_vifffi,
  18034. "nullFunc_vifffii": nullFunc_vifffii,
  18035. "nullFunc_viffi": nullFunc_viffi,
  18036. "nullFunc_viffii": nullFunc_viffii,
  18037. "nullFunc_viffiifffffiii": nullFunc_viffiifffffiii,
  18038. "nullFunc_viffiii": nullFunc_viffiii,
  18039. "nullFunc_viffiiiif": nullFunc_viffiiiif,
  18040. "nullFunc_vifi": nullFunc_vifi,
  18041. "nullFunc_vifii": nullFunc_vifii,
  18042. "nullFunc_vifiiii": nullFunc_vifiiii,
  18043. "nullFunc_vifijii": nullFunc_vifijii,
  18044. "nullFunc_vii": nullFunc_vii,
  18045. "nullFunc_viid": nullFunc_viid,
  18046. "nullFunc_viidi": nullFunc_viidi,
  18047. "nullFunc_viidii": nullFunc_viidii,
  18048. "nullFunc_viif": nullFunc_viif,
  18049. "nullFunc_viiff": nullFunc_viiff,
  18050. "nullFunc_viifff": nullFunc_viifff,
  18051. "nullFunc_viifffi": nullFunc_viifffi,
  18052. "nullFunc_viiffi": nullFunc_viiffi,
  18053. "nullFunc_viiffii": nullFunc_viiffii,
  18054. "nullFunc_viifi": nullFunc_viifi,
  18055. "nullFunc_viifii": nullFunc_viifii,
  18056. "nullFunc_viifiii": nullFunc_viifiii,
  18057. "nullFunc_viifiiii": nullFunc_viifiiii,
  18058. "nullFunc_viii": nullFunc_viii,
  18059. "nullFunc_viiidi": nullFunc_viiidi,
  18060. "nullFunc_viiifffi": nullFunc_viiifffi,
  18061. "nullFunc_viiiffi": nullFunc_viiiffi,
  18062. "nullFunc_viiiffii": nullFunc_viiiffii,
  18063. "nullFunc_viiifi": nullFunc_viiifi,
  18064. "nullFunc_viiifii": nullFunc_viiifii,
  18065. "nullFunc_viiifiii": nullFunc_viiifiii,
  18066. "nullFunc_viiifiiiii": nullFunc_viiifiiiii,
  18067. "nullFunc_viiii": nullFunc_viiii,
  18068. "nullFunc_viiiif": nullFunc_viiiif,
  18069. "nullFunc_viiiifii": nullFunc_viiiifii,
  18070. "nullFunc_viiiifiiiiif": nullFunc_viiiifiiiiif,
  18071. "nullFunc_viiiii": nullFunc_viiiii,
  18072. "nullFunc_viiiiif": nullFunc_viiiiif,
  18073. "nullFunc_viiiiiffi": nullFunc_viiiiiffi,
  18074. "nullFunc_viiiiiffii": nullFunc_viiiiiffii,
  18075. "nullFunc_viiiiifi": nullFunc_viiiiifi,
  18076. "nullFunc_viiiiii": nullFunc_viiiiii,
  18077. "nullFunc_viiiiiif": nullFunc_viiiiiif,
  18078. "nullFunc_viiiiiii": nullFunc_viiiiiii,
  18079. "nullFunc_viiiiiiifi": nullFunc_viiiiiiifi,
  18080. "nullFunc_viiiiiiii": nullFunc_viiiiiiii,
  18081. "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii,
  18082. "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii,
  18083. "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii,
  18084. "nullFunc_viiiiiiiiiiifii": nullFunc_viiiiiiiiiiifii,
  18085. "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii,
  18086. "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii,
  18087. "nullFunc_viiiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiiii,
  18088. "nullFunc_viiiiiiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiiiiiii,
  18089. "nullFunc_viiiiiji": nullFunc_viiiiiji,
  18090. "nullFunc_viiiij": nullFunc_viiiij,
  18091. "nullFunc_viiiijiiii": nullFunc_viiiijiiii,
  18092. "nullFunc_viiiji": nullFunc_viiiji,
  18093. "nullFunc_viiijji": nullFunc_viiijji,
  18094. "nullFunc_viij": nullFunc_viij,
  18095. "nullFunc_viiji": nullFunc_viiji,
  18096. "nullFunc_viijii": nullFunc_viijii,
  18097. "nullFunc_viijiijiii": nullFunc_viijiijiii,
  18098. "nullFunc_viijijii": nullFunc_viijijii,
  18099. "nullFunc_viijijiii": nullFunc_viijijiii,
  18100. "nullFunc_viijijj": nullFunc_viijijj,
  18101. "nullFunc_viijj": nullFunc_viijj,
  18102. "nullFunc_viijji": nullFunc_viijji,
  18103. "nullFunc_viijjii": nullFunc_viijjii,
  18104. "nullFunc_viijjiii": nullFunc_viijjiii,
  18105. "nullFunc_viijjji": nullFunc_viijjji,
  18106. "nullFunc_vij": nullFunc_vij,
  18107. "nullFunc_viji": nullFunc_viji,
  18108. "nullFunc_vijii": nullFunc_vijii,
  18109. "nullFunc_vijiii": nullFunc_vijiii,
  18110. "nullFunc_vijiji": nullFunc_vijiji,
  18111. "nullFunc_vijijji": nullFunc_vijijji,
  18112. "nullFunc_vijji": nullFunc_vijji,
  18113. "nullFunc_vijjii": nullFunc_vijjii,
  18114. "nullFunc_vijjji": nullFunc_vijjji,
  18115. "nullFunc_vji": nullFunc_vji,
  18116. "nullFunc_vjiiii": nullFunc_vjiiii,
  18117. "nullFunc_vjji": nullFunc_vjji,
  18118. "invoke_dddi": invoke_dddi,
  18119. "invoke_ddi": invoke_ddi,
  18120. "invoke_dfi": invoke_dfi,
  18121. "invoke_di": invoke_di,
  18122. "invoke_diddi": invoke_diddi,
  18123. "invoke_didi": invoke_didi,
  18124. "invoke_dii": invoke_dii,
  18125. "invoke_diii": invoke_diii,
  18126. "invoke_diiii": invoke_diiii,
  18127. "invoke_dji": invoke_dji,
  18128. "invoke_f": invoke_f,
  18129. "invoke_fdi": invoke_fdi,
  18130. "invoke_ff": invoke_ff,
  18131. "invoke_fff": invoke_fff,
  18132. "invoke_ffffi": invoke_ffffi,
  18133. "invoke_fffi": invoke_fffi,
  18134. "invoke_fffifffi": invoke_fffifffi,
  18135. "invoke_ffi": invoke_ffi,
  18136. "invoke_fi": invoke_fi,
  18137. "invoke_fif": invoke_fif,
  18138. "invoke_fiff": invoke_fiff,
  18139. "invoke_fifffi": invoke_fifffi,
  18140. "invoke_fiffi": invoke_fiffi,
  18141. "invoke_fifi": invoke_fifi,
  18142. "invoke_fifii": invoke_fifii,
  18143. "invoke_fii": invoke_fii,
  18144. "invoke_fiif": invoke_fiif,
  18145. "invoke_fiifi": invoke_fiifi,
  18146. "invoke_fiifii": invoke_fiifii,
  18147. "invoke_fiii": invoke_fiii,
  18148. "invoke_fiiii": invoke_fiiii,
  18149. "invoke_fiiiiiifiifif": invoke_fiiiiiifiifif,
  18150. "invoke_fiiiiiifiiiif": invoke_fiiiiiifiiiif,
  18151. "invoke_fji": invoke_fji,
  18152. "invoke_i": invoke_i,
  18153. "invoke_idi": invoke_idi,
  18154. "invoke_idiii": invoke_idiii,
  18155. "invoke_ifffi": invoke_ifffi,
  18156. "invoke_iffi": invoke_iffi,
  18157. "invoke_ifi": invoke_ifi,
  18158. "invoke_ifiii": invoke_ifiii,
  18159. "invoke_ii": invoke_ii,
  18160. "invoke_iidi": invoke_iidi,
  18161. "invoke_iidii": invoke_iidii,
  18162. "invoke_iif": invoke_iif,
  18163. "invoke_iifff": invoke_iifff,
  18164. "invoke_iifffi": invoke_iifffi,
  18165. "invoke_iiffi": invoke_iiffi,
  18166. "invoke_iifi": invoke_iifi,
  18167. "invoke_iifii": invoke_iifii,
  18168. "invoke_iifiii": invoke_iifiii,
  18169. "invoke_iifiiiijii": invoke_iifiiiijii,
  18170. "invoke_iii": invoke_iii,
  18171. "invoke_iiif": invoke_iiif,
  18172. "invoke_iiiff": invoke_iiiff,
  18173. "invoke_iiifi": invoke_iiifi,
  18174. "invoke_iiifii": invoke_iiifii,
  18175. "invoke_iiifiii": invoke_iiifiii,
  18176. "invoke_iiifiiii": invoke_iiifiiii,
  18177. "invoke_iiii": invoke_iiii,
  18178. "invoke_iiiifffffi": invoke_iiiifffffi,
  18179. "invoke_iiiifffffii": invoke_iiiifffffii,
  18180. "invoke_iiiifffiii": invoke_iiiifffiii,
  18181. "invoke_iiiifi": invoke_iiiifi,
  18182. "invoke_iiiifii": invoke_iiiifii,
  18183. "invoke_iiiifiii": invoke_iiiifiii,
  18184. "invoke_iiiifiiii": invoke_iiiifiiii,
  18185. "invoke_iiiifiiiii": invoke_iiiifiiiii,
  18186. "invoke_iiiii": invoke_iiiii,
  18187. "invoke_iiiiifiii": invoke_iiiiifiii,
  18188. "invoke_iiiiifiiiiif": invoke_iiiiifiiiiif,
  18189. "invoke_iiiiii": invoke_iiiiii,
  18190. "invoke_iiiiiifff": invoke_iiiiiifff,
  18191. "invoke_iiiiiifffiiifiii": invoke_iiiiiifffiiifiii,
  18192. "invoke_iiiiiiffiiiiiiiiiffffiii": invoke_iiiiiiffiiiiiiiiiffffiii,
  18193. "invoke_iiiiiiffiiiiiiiiiffffiiii": invoke_iiiiiiffiiiiiiiiiffffiiii,
  18194. "invoke_iiiiiiffiiiiiiiiiiiiiii": invoke_iiiiiiffiiiiiiiiiiiiiii,
  18195. "invoke_iiiiiifiif": invoke_iiiiiifiif,
  18196. "invoke_iiiiiifiii": invoke_iiiiiifiii,
  18197. "invoke_iiiiiii": invoke_iiiiiii,
  18198. "invoke_iiiiiiifiif": invoke_iiiiiiifiif,
  18199. "invoke_iiiiiiii": invoke_iiiiiiii,
  18200. "invoke_iiiiiiiii": invoke_iiiiiiiii,
  18201. "invoke_iiiiiiiiii": invoke_iiiiiiiiii,
  18202. "invoke_iiiiiiiiiii": invoke_iiiiiiiiiii,
  18203. "invoke_iiiiiiiiiiii": invoke_iiiiiiiiiiii,
  18204. "invoke_iiiiiiiiiiiii": invoke_iiiiiiiiiiiii,
  18205. "invoke_iiiiiiiiiiiiii": invoke_iiiiiiiiiiiiii,
  18206. "invoke_iiiiiji": invoke_iiiiiji,
  18207. "invoke_iiiij": invoke_iiiij,
  18208. "invoke_iiiiji": invoke_iiiiji,
  18209. "invoke_iiiijii": invoke_iiiijii,
  18210. "invoke_iiiijiii": invoke_iiiijiii,
  18211. "invoke_iiij": invoke_iiij,
  18212. "invoke_iiiji": invoke_iiiji,
  18213. "invoke_iiijii": invoke_iiijii,
  18214. "invoke_iiijiii": invoke_iiijiii,
  18215. "invoke_iiijji": invoke_iiijji,
  18216. "invoke_iiijjiiii": invoke_iiijjiiii,
  18217. "invoke_iij": invoke_iij,
  18218. "invoke_iiji": invoke_iiji,
  18219. "invoke_iijii": invoke_iijii,
  18220. "invoke_iijiii": invoke_iijiii,
  18221. "invoke_iijji": invoke_iijji,
  18222. "invoke_iijjii": invoke_iijjii,
  18223. "invoke_iijjiii": invoke_iijjiii,
  18224. "invoke_iijjji": invoke_iijjji,
  18225. "invoke_ij": invoke_ij,
  18226. "invoke_iji": invoke_iji,
  18227. "invoke_ijiii": invoke_ijiii,
  18228. "invoke_ijj": invoke_ijj,
  18229. "invoke_ijji": invoke_ijji,
  18230. "invoke_j": invoke_j,
  18231. "invoke_jdi": invoke_jdi,
  18232. "invoke_jdii": invoke_jdii,
  18233. "invoke_jfi": invoke_jfi,
  18234. "invoke_ji": invoke_ji,
  18235. "invoke_jidi": invoke_jidi,
  18236. "invoke_jidii": invoke_jidii,
  18237. "invoke_jii": invoke_jii,
  18238. "invoke_jiii": invoke_jiii,
  18239. "invoke_jiiii": invoke_jiiii,
  18240. "invoke_jiiiii": invoke_jiiiii,
  18241. "invoke_jiiiiii": invoke_jiiiiii,
  18242. "invoke_jiiiiiiiiii": invoke_jiiiiiiiiii,
  18243. "invoke_jiiji": invoke_jiiji,
  18244. "invoke_jiji": invoke_jiji,
  18245. "invoke_jijii": invoke_jijii,
  18246. "invoke_jijiii": invoke_jijiii,
  18247. "invoke_jijji": invoke_jijji,
  18248. "invoke_jji": invoke_jji,
  18249. "invoke_v": invoke_v,
  18250. "invoke_vd": invoke_vd,
  18251. "invoke_vf": invoke_vf,
  18252. "invoke_vff": invoke_vff,
  18253. "invoke_vffff": invoke_vffff,
  18254. "invoke_vfi": invoke_vfi,
  18255. "invoke_vi": invoke_vi,
  18256. "invoke_vid": invoke_vid,
  18257. "invoke_vidi": invoke_vidi,
  18258. "invoke_vif": invoke_vif,
  18259. "invoke_viff": invoke_viff,
  18260. "invoke_vifff": invoke_vifff,
  18261. "invoke_viffff": invoke_viffff,
  18262. "invoke_viffffi": invoke_viffffi,
  18263. "invoke_viffffii": invoke_viffffii,
  18264. "invoke_viffffiifffiiiiif": invoke_viffffiifffiiiiif,
  18265. "invoke_viffffiii": invoke_viffffiii,
  18266. "invoke_vifffi": invoke_vifffi,
  18267. "invoke_vifffii": invoke_vifffii,
  18268. "invoke_viffi": invoke_viffi,
  18269. "invoke_viffii": invoke_viffii,
  18270. "invoke_viffiifffffiii": invoke_viffiifffffiii,
  18271. "invoke_viffiii": invoke_viffiii,
  18272. "invoke_viffiiiif": invoke_viffiiiif,
  18273. "invoke_vifi": invoke_vifi,
  18274. "invoke_vifii": invoke_vifii,
  18275. "invoke_vifiiii": invoke_vifiiii,
  18276. "invoke_vifijii": invoke_vifijii,
  18277. "invoke_vii": invoke_vii,
  18278. "invoke_viid": invoke_viid,
  18279. "invoke_viidi": invoke_viidi,
  18280. "invoke_viidii": invoke_viidii,
  18281. "invoke_viif": invoke_viif,
  18282. "invoke_viiff": invoke_viiff,
  18283. "invoke_viifff": invoke_viifff,
  18284. "invoke_viifffi": invoke_viifffi,
  18285. "invoke_viiffi": invoke_viiffi,
  18286. "invoke_viiffii": invoke_viiffii,
  18287. "invoke_viifi": invoke_viifi,
  18288. "invoke_viifii": invoke_viifii,
  18289. "invoke_viifiii": invoke_viifiii,
  18290. "invoke_viifiiii": invoke_viifiiii,
  18291. "invoke_viii": invoke_viii,
  18292. "invoke_viiidi": invoke_viiidi,
  18293. "invoke_viiifffi": invoke_viiifffi,
  18294. "invoke_viiiffi": invoke_viiiffi,
  18295. "invoke_viiiffii": invoke_viiiffii,
  18296. "invoke_viiifi": invoke_viiifi,
  18297. "invoke_viiifii": invoke_viiifii,
  18298. "invoke_viiifiii": invoke_viiifiii,
  18299. "invoke_viiifiiiii": invoke_viiifiiiii,
  18300. "invoke_viiii": invoke_viiii,
  18301. "invoke_viiiif": invoke_viiiif,
  18302. "invoke_viiiifii": invoke_viiiifii,
  18303. "invoke_viiiifiiiiif": invoke_viiiifiiiiif,
  18304. "invoke_viiiii": invoke_viiiii,
  18305. "invoke_viiiiif": invoke_viiiiif,
  18306. "invoke_viiiiiffi": invoke_viiiiiffi,
  18307. "invoke_viiiiiffii": invoke_viiiiiffii,
  18308. "invoke_viiiiifi": invoke_viiiiifi,
  18309. "invoke_viiiiii": invoke_viiiiii,
  18310. "invoke_viiiiiif": invoke_viiiiiif,
  18311. "invoke_viiiiiii": invoke_viiiiiii,
  18312. "invoke_viiiiiiifi": invoke_viiiiiiifi,
  18313. "invoke_viiiiiiii": invoke_viiiiiiii,
  18314. "invoke_viiiiiiiii": invoke_viiiiiiiii,
  18315. "invoke_viiiiiiiiii": invoke_viiiiiiiiii,
  18316. "invoke_viiiiiiiiiii": invoke_viiiiiiiiiii,
  18317. "invoke_viiiiiiiiiiifii": invoke_viiiiiiiiiiifii,
  18318. "invoke_viiiiiiiiiiii": invoke_viiiiiiiiiiii,
  18319. "invoke_viiiiiiiiiiiiii": invoke_viiiiiiiiiiiiii,
  18320. "invoke_viiiiiiiiiiiiiii": invoke_viiiiiiiiiiiiiii,
  18321. "invoke_viiiiiiiiiiiiiiiiii": invoke_viiiiiiiiiiiiiiiiii,
  18322. "invoke_viiiiiji": invoke_viiiiiji,
  18323. "invoke_viiiij": invoke_viiiij,
  18324. "invoke_viiiijiiii": invoke_viiiijiiii,
  18325. "invoke_viiiji": invoke_viiiji,
  18326. "invoke_viiijji": invoke_viiijji,
  18327. "invoke_viij": invoke_viij,
  18328. "invoke_viiji": invoke_viiji,
  18329. "invoke_viijii": invoke_viijii,
  18330. "invoke_viijiijiii": invoke_viijiijiii,
  18331. "invoke_viijijii": invoke_viijijii,
  18332. "invoke_viijijiii": invoke_viijijiii,
  18333. "invoke_viijijj": invoke_viijijj,
  18334. "invoke_viijj": invoke_viijj,
  18335. "invoke_viijji": invoke_viijji,
  18336. "invoke_viijjii": invoke_viijjii,
  18337. "invoke_viijjiii": invoke_viijjiii,
  18338. "invoke_viijjji": invoke_viijjji,
  18339. "invoke_vij": invoke_vij,
  18340. "invoke_viji": invoke_viji,
  18341. "invoke_vijii": invoke_vijii,
  18342. "invoke_vijiii": invoke_vijiii,
  18343. "invoke_vijiji": invoke_vijiji,
  18344. "invoke_vijijji": invoke_vijijji,
  18345. "invoke_vijji": invoke_vijji,
  18346. "invoke_vijjii": invoke_vijjii,
  18347. "invoke_vijjji": invoke_vijjji,
  18348. "invoke_vji": invoke_vji,
  18349. "invoke_vjiiii": invoke_vjiiii,
  18350. "invoke_vjji": invoke_vjji,
  18351. "_CreateIFrame": _CreateIFrame,
  18352. "_JS_Cursor_SetImage": _JS_Cursor_SetImage,
  18353. "_JS_Cursor_SetShow": _JS_Cursor_SetShow,
  18354. "_JS_Eval_ClearInterval": _JS_Eval_ClearInterval,
  18355. "_JS_Eval_SetInterval": _JS_Eval_SetInterval,
  18356. "_JS_FileSystem_Initialize": _JS_FileSystem_Initialize,
  18357. "_JS_FileSystem_Sync": _JS_FileSystem_Sync,
  18358. "_JS_Log_Dump": _JS_Log_Dump,
  18359. "_JS_Log_StackTrace": _JS_Log_StackTrace,
  18360. "_JS_Profiler_InjectJobs": _JS_Profiler_InjectJobs,
  18361. "_JS_Sound_Create_Channel": _JS_Sound_Create_Channel,
  18362. "_JS_Sound_GetLength": _JS_Sound_GetLength,
  18363. "_JS_Sound_GetLoadState": _JS_Sound_GetLoadState,
  18364. "_JS_Sound_Init": _JS_Sound_Init,
  18365. "_JS_Sound_Load": _JS_Sound_Load,
  18366. "_JS_Sound_Load_PCM": _JS_Sound_Load_PCM,
  18367. "_JS_Sound_Play": _JS_Sound_Play,
  18368. "_JS_Sound_ReleaseInstance": _JS_Sound_ReleaseInstance,
  18369. "_JS_Sound_ResumeIfNeeded": _JS_Sound_ResumeIfNeeded,
  18370. "_JS_Sound_Set3D": _JS_Sound_Set3D,
  18371. "_JS_Sound_SetListenerOrientation": _JS_Sound_SetListenerOrientation,
  18372. "_JS_Sound_SetListenerPosition": _JS_Sound_SetListenerPosition,
  18373. "_JS_Sound_SetLoop": _JS_Sound_SetLoop,
  18374. "_JS_Sound_SetLoopPoints": _JS_Sound_SetLoopPoints,
  18375. "_JS_Sound_SetPaused": _JS_Sound_SetPaused,
  18376. "_JS_Sound_SetPitch": _JS_Sound_SetPitch,
  18377. "_JS_Sound_SetPosition": _JS_Sound_SetPosition,
  18378. "_JS_Sound_SetVolume": _JS_Sound_SetVolume,
  18379. "_JS_Sound_Stop": _JS_Sound_Stop,
  18380. "_JS_SystemInfo_GetBrowserName": _JS_SystemInfo_GetBrowserName,
  18381. "_JS_SystemInfo_GetBrowserVersionString": _JS_SystemInfo_GetBrowserVersionString,
  18382. "_JS_SystemInfo_GetCanvasClientSize": _JS_SystemInfo_GetCanvasClientSize,
  18383. "_JS_SystemInfo_GetDocumentURL": _JS_SystemInfo_GetDocumentURL,
  18384. "_JS_SystemInfo_GetGPUInfo": _JS_SystemInfo_GetGPUInfo,
  18385. "_JS_SystemInfo_GetLanguage": _JS_SystemInfo_GetLanguage,
  18386. "_JS_SystemInfo_GetMatchWebGLToCanvasSize": _JS_SystemInfo_GetMatchWebGLToCanvasSize,
  18387. "_JS_SystemInfo_GetMemory": _JS_SystemInfo_GetMemory,
  18388. "_JS_SystemInfo_GetOS": _JS_SystemInfo_GetOS,
  18389. "_JS_SystemInfo_GetPreferredDevicePixelRatio": _JS_SystemInfo_GetPreferredDevicePixelRatio,
  18390. "_JS_SystemInfo_GetScreenSize": _JS_SystemInfo_GetScreenSize,
  18391. "_JS_SystemInfo_HasCursorLock": _JS_SystemInfo_HasCursorLock,
  18392. "_JS_SystemInfo_HasFullscreen": _JS_SystemInfo_HasFullscreen,
  18393. "_JS_SystemInfo_HasWebGL": _JS_SystemInfo_HasWebGL,
  18394. "_JS_WebRequest_Abort": _JS_WebRequest_Abort,
  18395. "_JS_WebRequest_Create": _JS_WebRequest_Create,
  18396. "_JS_WebRequest_GetResponseHeaders": _JS_WebRequest_GetResponseHeaders,
  18397. "_JS_WebRequest_Release": _JS_WebRequest_Release,
  18398. "_JS_WebRequest_Send": _JS_WebRequest_Send,
  18399. "_JS_WebRequest_SetProgressHandler": _JS_WebRequest_SetProgressHandler,
  18400. "_JS_WebRequest_SetRequestHeader": _JS_WebRequest_SetRequestHeader,
  18401. "_JS_WebRequest_SetResponseHandler": _JS_WebRequest_SetResponseHandler,
  18402. "_JS_WebRequest_SetTimeout": _JS_WebRequest_SetTimeout,
  18403. "__ZSt18uncaught_exceptionv": __ZSt18uncaught_exceptionv,
  18404. "___atomic_compare_exchange_8": ___atomic_compare_exchange_8,
  18405. "___atomic_fetch_add_8": ___atomic_fetch_add_8,
  18406. "___buildEnvironment": ___buildEnvironment,
  18407. "___cxa_allocate_exception": ___cxa_allocate_exception,
  18408. "___cxa_begin_catch": ___cxa_begin_catch,
  18409. "___cxa_find_matching_catch": ___cxa_find_matching_catch,
  18410. "___cxa_pure_virtual": ___cxa_pure_virtual,
  18411. "___cxa_throw": ___cxa_throw,
  18412. "___gxx_personality_v0": ___gxx_personality_v0,
  18413. "___lock": ___lock,
  18414. "___map_file": ___map_file,
  18415. "___resumeException": ___resumeException,
  18416. "___setErrNo": ___setErrNo,
  18417. "___syscall10": ___syscall10,
  18418. "___syscall102": ___syscall102,
  18419. "___syscall122": ___syscall122,
  18420. "___syscall140": ___syscall140,
  18421. "___syscall142": ___syscall142,
  18422. "___syscall145": ___syscall145,
  18423. "___syscall146": ___syscall146,
  18424. "___syscall15": ___syscall15,
  18425. "___syscall183": ___syscall183,
  18426. "___syscall192": ___syscall192,
  18427. "___syscall193": ___syscall193,
  18428. "___syscall195": ___syscall195,
  18429. "___syscall196": ___syscall196,
  18430. "___syscall197": ___syscall197,
  18431. "___syscall199": ___syscall199,
  18432. "___syscall202": ___syscall202,
  18433. "___syscall220": ___syscall220,
  18434. "___syscall221": ___syscall221,
  18435. "___syscall268": ___syscall268,
  18436. "___syscall3": ___syscall3,
  18437. "___syscall33": ___syscall33,
  18438. "___syscall38": ___syscall38,
  18439. "___syscall39": ___syscall39,
  18440. "___syscall4": ___syscall4,
  18441. "___syscall40": ___syscall40,
  18442. "___syscall5": ___syscall5,
  18443. "___syscall54": ___syscall54,
  18444. "___syscall6": ___syscall6,
  18445. "___syscall77": ___syscall77,
  18446. "___syscall85": ___syscall85,
  18447. "___syscall9": ___syscall9,
  18448. "___syscall91": ___syscall91,
  18449. "___unlock": ___unlock,
  18450. "__addDays": __addDays,
  18451. "__arraySum": __arraySum,
  18452. "__emscripten_do_request_fullscreen": __emscripten_do_request_fullscreen,
  18453. "__emscripten_sample_gamepad_data": __emscripten_sample_gamepad_data,
  18454. "__emscripten_traverse_stack": __emscripten_traverse_stack,
  18455. "__exit": __exit,
  18456. "__formatString": __formatString,
  18457. "__inet_ntop4_raw": __inet_ntop4_raw,
  18458. "__inet_ntop6_raw": __inet_ntop6_raw,
  18459. "__inet_pton4_raw": __inet_pton4_raw,
  18460. "__inet_pton6_raw": __inet_pton6_raw,
  18461. "__isLeapYear": __isLeapYear,
  18462. "__read_sockaddr": __read_sockaddr,
  18463. "__reallyNegative": __reallyNegative,
  18464. "__setLetterbox": __setLetterbox,
  18465. "__write_sockaddr": __write_sockaddr,
  18466. "_abort": _abort,
  18467. "_atexit": _atexit,
  18468. "_clock": _clock,
  18469. "_clock_getres": _clock_getres,
  18470. "_clock_gettime": _clock_gettime,
  18471. "_difftime": _difftime,
  18472. "_dlclose": _dlclose,
  18473. "_dlopen": _dlopen,
  18474. "_dlsym": _dlsym,
  18475. "_emscripten_asm_const_i": _emscripten_asm_const_i,
  18476. "_emscripten_asm_const_id": _emscripten_asm_const_id,
  18477. "_emscripten_asm_const_sync_on_main_thread_i": _emscripten_asm_const_sync_on_main_thread_i,
  18478. "_emscripten_cancel_main_loop": _emscripten_cancel_main_loop,
  18479. "_emscripten_exit_fullscreen": _emscripten_exit_fullscreen,
  18480. "_emscripten_exit_pointerlock": _emscripten_exit_pointerlock,
  18481. "_emscripten_get_callstack_js": _emscripten_get_callstack_js,
  18482. "_emscripten_get_canvas_element_size": _emscripten_get_canvas_element_size,
  18483. "_emscripten_get_canvas_element_size_calling_thread": _emscripten_get_canvas_element_size_calling_thread,
  18484. "_emscripten_get_canvas_element_size_main_thread": _emscripten_get_canvas_element_size_main_thread,
  18485. "_emscripten_get_fullscreen_status": _emscripten_get_fullscreen_status,
  18486. "_emscripten_get_gamepad_status": _emscripten_get_gamepad_status,
  18487. "_emscripten_get_main_loop_timing": _emscripten_get_main_loop_timing,
  18488. "_emscripten_get_now": _emscripten_get_now,
  18489. "_emscripten_get_now_is_monotonic": _emscripten_get_now_is_monotonic,
  18490. "_emscripten_get_now_res": _emscripten_get_now_res,
  18491. "_emscripten_get_num_gamepads": _emscripten_get_num_gamepads,
  18492. "_emscripten_has_threading_support": _emscripten_has_threading_support,
  18493. "_emscripten_html5_remove_all_event_listeners": _emscripten_html5_remove_all_event_listeners,
  18494. "_emscripten_is_webgl_context_lost": _emscripten_is_webgl_context_lost,
  18495. "_emscripten_log": _emscripten_log,
  18496. "_emscripten_log_js": _emscripten_log_js,
  18497. "_emscripten_memcpy_big": _emscripten_memcpy_big,
  18498. "_emscripten_num_logical_cores": _emscripten_num_logical_cores,
  18499. "_emscripten_request_fullscreen": _emscripten_request_fullscreen,
  18500. "_emscripten_request_pointerlock": _emscripten_request_pointerlock,
  18501. "_emscripten_set_blur_callback_on_thread": _emscripten_set_blur_callback_on_thread,
  18502. "_emscripten_set_canvas_element_size": _emscripten_set_canvas_element_size,
  18503. "_emscripten_set_dblclick_callback_on_thread": _emscripten_set_dblclick_callback_on_thread,
  18504. "_emscripten_set_devicemotion_callback_on_thread": _emscripten_set_devicemotion_callback_on_thread,
  18505. "_emscripten_set_deviceorientation_callback_on_thread": _emscripten_set_deviceorientation_callback_on_thread,
  18506. "_emscripten_set_focus_callback_on_thread": _emscripten_set_focus_callback_on_thread,
  18507. "_emscripten_set_fullscreenchange_callback_on_thread": _emscripten_set_fullscreenchange_callback_on_thread,
  18508. "_emscripten_set_gamepadconnected_callback_on_thread": _emscripten_set_gamepadconnected_callback_on_thread,
  18509. "_emscripten_set_gamepaddisconnected_callback_on_thread": _emscripten_set_gamepaddisconnected_callback_on_thread,
  18510. "_emscripten_set_keydown_callback_on_thread": _emscripten_set_keydown_callback_on_thread,
  18511. "_emscripten_set_keypress_callback_on_thread": _emscripten_set_keypress_callback_on_thread,
  18512. "_emscripten_set_keyup_callback_on_thread": _emscripten_set_keyup_callback_on_thread,
  18513. "_emscripten_set_main_loop": _emscripten_set_main_loop,
  18514. "_emscripten_set_main_loop_timing": _emscripten_set_main_loop_timing,
  18515. "_emscripten_set_mousedown_callback_on_thread": _emscripten_set_mousedown_callback_on_thread,
  18516. "_emscripten_set_mousemove_callback_on_thread": _emscripten_set_mousemove_callback_on_thread,
  18517. "_emscripten_set_mouseup_callback_on_thread": _emscripten_set_mouseup_callback_on_thread,
  18518. "_emscripten_set_touchcancel_callback_on_thread": _emscripten_set_touchcancel_callback_on_thread,
  18519. "_emscripten_set_touchend_callback_on_thread": _emscripten_set_touchend_callback_on_thread,
  18520. "_emscripten_set_touchmove_callback_on_thread": _emscripten_set_touchmove_callback_on_thread,
  18521. "_emscripten_set_touchstart_callback_on_thread": _emscripten_set_touchstart_callback_on_thread,
  18522. "_emscripten_set_wheel_callback_on_thread": _emscripten_set_wheel_callback_on_thread,
  18523. "_emscripten_webgl_create_context": _emscripten_webgl_create_context,
  18524. "_emscripten_webgl_destroy_context": _emscripten_webgl_destroy_context,
  18525. "_emscripten_webgl_destroy_context_calling_thread": _emscripten_webgl_destroy_context_calling_thread,
  18526. "_emscripten_webgl_do_create_context": _emscripten_webgl_do_create_context,
  18527. "_emscripten_webgl_do_get_current_context": _emscripten_webgl_do_get_current_context,
  18528. "_emscripten_webgl_enable_extension": _emscripten_webgl_enable_extension,
  18529. "_emscripten_webgl_enable_extension_calling_thread": _emscripten_webgl_enable_extension_calling_thread,
  18530. "_emscripten_webgl_get_current_context": _emscripten_webgl_get_current_context,
  18531. "_emscripten_webgl_init_context_attributes": _emscripten_webgl_init_context_attributes,
  18532. "_emscripten_webgl_make_context_current": _emscripten_webgl_make_context_current,
  18533. "_exit": _exit,
  18534. "_flock": _flock,
  18535. "_getenv": _getenv,
  18536. "_gethostbyaddr": _gethostbyaddr,
  18537. "_gethostbyname": _gethostbyname,
  18538. "_getpagesize": _getpagesize,
  18539. "_getpwuid": _getpwuid,
  18540. "_gettimeofday": _gettimeofday,
  18541. "_glActiveTexture": _glActiveTexture,
  18542. "_glAttachShader": _glAttachShader,
  18543. "_glBeginQuery": _glBeginQuery,
  18544. "_glBeginTransformFeedback": _glBeginTransformFeedback,
  18545. "_glBindAttribLocation": _glBindAttribLocation,
  18546. "_glBindBuffer": _glBindBuffer,
  18547. "_glBindBufferBase": _glBindBufferBase,
  18548. "_glBindBufferRange": _glBindBufferRange,
  18549. "_glBindFramebuffer": _glBindFramebuffer,
  18550. "_glBindRenderbuffer": _glBindRenderbuffer,
  18551. "_glBindSampler": _glBindSampler,
  18552. "_glBindTexture": _glBindTexture,
  18553. "_glBindTransformFeedback": _glBindTransformFeedback,
  18554. "_glBindVertexArray": _glBindVertexArray,
  18555. "_glBlendEquation": _glBlendEquation,
  18556. "_glBlendEquationSeparate": _glBlendEquationSeparate,
  18557. "_glBlendFuncSeparate": _glBlendFuncSeparate,
  18558. "_glBlitFramebuffer": _glBlitFramebuffer,
  18559. "_glBufferData": _glBufferData,
  18560. "_glBufferSubData": _glBufferSubData,
  18561. "_glCheckFramebufferStatus": _glCheckFramebufferStatus,
  18562. "_glClear": _glClear,
  18563. "_glClearBufferfi": _glClearBufferfi,
  18564. "_glClearBufferfv": _glClearBufferfv,
  18565. "_glClearBufferuiv": _glClearBufferuiv,
  18566. "_glClearColor": _glClearColor,
  18567. "_glClearDepthf": _glClearDepthf,
  18568. "_glClearStencil": _glClearStencil,
  18569. "_glClientWaitSync": _glClientWaitSync,
  18570. "_glColorMask": _glColorMask,
  18571. "_glCompileShader": _glCompileShader,
  18572. "_glCompressedTexImage2D": _glCompressedTexImage2D,
  18573. "_glCompressedTexImage3D": _glCompressedTexImage3D,
  18574. "_glCompressedTexSubImage2D": _glCompressedTexSubImage2D,
  18575. "_glCompressedTexSubImage3D": _glCompressedTexSubImage3D,
  18576. "_glCopyBufferSubData": _glCopyBufferSubData,
  18577. "_glCopyTexImage2D": _glCopyTexImage2D,
  18578. "_glCopyTexSubImage2D": _glCopyTexSubImage2D,
  18579. "_glCreateProgram": _glCreateProgram,
  18580. "_glCreateShader": _glCreateShader,
  18581. "_glCullFace": _glCullFace,
  18582. "_glDeleteBuffers": _glDeleteBuffers,
  18583. "_glDeleteFramebuffers": _glDeleteFramebuffers,
  18584. "_glDeleteProgram": _glDeleteProgram,
  18585. "_glDeleteQueries": _glDeleteQueries,
  18586. "_glDeleteRenderbuffers": _glDeleteRenderbuffers,
  18587. "_glDeleteSamplers": _glDeleteSamplers,
  18588. "_glDeleteShader": _glDeleteShader,
  18589. "_glDeleteSync": _glDeleteSync,
  18590. "_glDeleteTextures": _glDeleteTextures,
  18591. "_glDeleteTransformFeedbacks": _glDeleteTransformFeedbacks,
  18592. "_glDeleteVertexArrays": _glDeleteVertexArrays,
  18593. "_glDepthFunc": _glDepthFunc,
  18594. "_glDepthMask": _glDepthMask,
  18595. "_glDetachShader": _glDetachShader,
  18596. "_glDisable": _glDisable,
  18597. "_glDisableVertexAttribArray": _glDisableVertexAttribArray,
  18598. "_glDrawArrays": _glDrawArrays,
  18599. "_glDrawArraysInstanced": _glDrawArraysInstanced,
  18600. "_glDrawBuffers": _glDrawBuffers,
  18601. "_glDrawElements": _glDrawElements,
  18602. "_glDrawElementsInstanced": _glDrawElementsInstanced,
  18603. "_glEnable": _glEnable,
  18604. "_glEnableVertexAttribArray": _glEnableVertexAttribArray,
  18605. "_glEndQuery": _glEndQuery,
  18606. "_glEndTransformFeedback": _glEndTransformFeedback,
  18607. "_glFenceSync": _glFenceSync,
  18608. "_glFinish": _glFinish,
  18609. "_glFlush": _glFlush,
  18610. "_glFlushMappedBufferRange": _glFlushMappedBufferRange,
  18611. "_glFramebufferRenderbuffer": _glFramebufferRenderbuffer,
  18612. "_glFramebufferTexture2D": _glFramebufferTexture2D,
  18613. "_glFramebufferTextureLayer": _glFramebufferTextureLayer,
  18614. "_glFrontFace": _glFrontFace,
  18615. "_glGenBuffers": _glGenBuffers,
  18616. "_glGenFramebuffers": _glGenFramebuffers,
  18617. "_glGenQueries": _glGenQueries,
  18618. "_glGenRenderbuffers": _glGenRenderbuffers,
  18619. "_glGenSamplers": _glGenSamplers,
  18620. "_glGenTextures": _glGenTextures,
  18621. "_glGenTransformFeedbacks": _glGenTransformFeedbacks,
  18622. "_glGenVertexArrays": _glGenVertexArrays,
  18623. "_glGenerateMipmap": _glGenerateMipmap,
  18624. "_glGetActiveAttrib": _glGetActiveAttrib,
  18625. "_glGetActiveUniform": _glGetActiveUniform,
  18626. "_glGetActiveUniformBlockName": _glGetActiveUniformBlockName,
  18627. "_glGetActiveUniformBlockiv": _glGetActiveUniformBlockiv,
  18628. "_glGetActiveUniformsiv": _glGetActiveUniformsiv,
  18629. "_glGetAttribLocation": _glGetAttribLocation,
  18630. "_glGetError": _glGetError,
  18631. "_glGetFramebufferAttachmentParameteriv": _glGetFramebufferAttachmentParameteriv,
  18632. "_glGetIntegeri_v": _glGetIntegeri_v,
  18633. "_glGetIntegerv": _glGetIntegerv,
  18634. "_glGetInternalformativ": _glGetInternalformativ,
  18635. "_glGetProgramBinary": _glGetProgramBinary,
  18636. "_glGetProgramInfoLog": _glGetProgramInfoLog,
  18637. "_glGetProgramiv": _glGetProgramiv,
  18638. "_glGetQueryObjectuiv": _glGetQueryObjectuiv,
  18639. "_glGetQueryiv": _glGetQueryiv,
  18640. "_glGetRenderbufferParameteriv": _glGetRenderbufferParameteriv,
  18641. "_glGetShaderInfoLog": _glGetShaderInfoLog,
  18642. "_glGetShaderPrecisionFormat": _glGetShaderPrecisionFormat,
  18643. "_glGetShaderSource": _glGetShaderSource,
  18644. "_glGetShaderiv": _glGetShaderiv,
  18645. "_glGetString": _glGetString,
  18646. "_glGetStringi": _glGetStringi,
  18647. "_glGetTexParameteriv": _glGetTexParameteriv,
  18648. "_glGetUniformBlockIndex": _glGetUniformBlockIndex,
  18649. "_glGetUniformIndices": _glGetUniformIndices,
  18650. "_glGetUniformLocation": _glGetUniformLocation,
  18651. "_glGetUniformiv": _glGetUniformiv,
  18652. "_glGetVertexAttribiv": _glGetVertexAttribiv,
  18653. "_glInvalidateFramebuffer": _glInvalidateFramebuffer,
  18654. "_glIsEnabled": _glIsEnabled,
  18655. "_glIsVertexArray": _glIsVertexArray,
  18656. "_glLinkProgram": _glLinkProgram,
  18657. "_glMapBufferRange": _glMapBufferRange,
  18658. "_glPixelStorei": _glPixelStorei,
  18659. "_glPolygonOffset": _glPolygonOffset,
  18660. "_glProgramBinary": _glProgramBinary,
  18661. "_glProgramParameteri": _glProgramParameteri,
  18662. "_glReadBuffer": _glReadBuffer,
  18663. "_glReadPixels": _glReadPixels,
  18664. "_glRenderbufferStorage": _glRenderbufferStorage,
  18665. "_glRenderbufferStorageMultisample": _glRenderbufferStorageMultisample,
  18666. "_glSamplerParameteri": _glSamplerParameteri,
  18667. "_glScissor": _glScissor,
  18668. "_glShaderSource": _glShaderSource,
  18669. "_glStencilFuncSeparate": _glStencilFuncSeparate,
  18670. "_glStencilMask": _glStencilMask,
  18671. "_glStencilOpSeparate": _glStencilOpSeparate,
  18672. "_glTexImage2D": _glTexImage2D,
  18673. "_glTexImage3D": _glTexImage3D,
  18674. "_glTexParameterf": _glTexParameterf,
  18675. "_glTexParameteri": _glTexParameteri,
  18676. "_glTexParameteriv": _glTexParameteriv,
  18677. "_glTexStorage2D": _glTexStorage2D,
  18678. "_glTexStorage3D": _glTexStorage3D,
  18679. "_glTexSubImage2D": _glTexSubImage2D,
  18680. "_glTexSubImage3D": _glTexSubImage3D,
  18681. "_glTransformFeedbackVaryings": _glTransformFeedbackVaryings,
  18682. "_glUniform1fv": _glUniform1fv,
  18683. "_glUniform1i": _glUniform1i,
  18684. "_glUniform1iv": _glUniform1iv,
  18685. "_glUniform1uiv": _glUniform1uiv,
  18686. "_glUniform2fv": _glUniform2fv,
  18687. "_glUniform2iv": _glUniform2iv,
  18688. "_glUniform2uiv": _glUniform2uiv,
  18689. "_glUniform3fv": _glUniform3fv,
  18690. "_glUniform3iv": _glUniform3iv,
  18691. "_glUniform3uiv": _glUniform3uiv,
  18692. "_glUniform4fv": _glUniform4fv,
  18693. "_glUniform4iv": _glUniform4iv,
  18694. "_glUniform4uiv": _glUniform4uiv,
  18695. "_glUniformBlockBinding": _glUniformBlockBinding,
  18696. "_glUniformMatrix3fv": _glUniformMatrix3fv,
  18697. "_glUniformMatrix4fv": _glUniformMatrix4fv,
  18698. "_glUnmapBuffer": _glUnmapBuffer,
  18699. "_glUseProgram": _glUseProgram,
  18700. "_glValidateProgram": _glValidateProgram,
  18701. "_glVertexAttrib4f": _glVertexAttrib4f,
  18702. "_glVertexAttrib4fv": _glVertexAttrib4fv,
  18703. "_glVertexAttribIPointer": _glVertexAttribIPointer,
  18704. "_glVertexAttribPointer": _glVertexAttribPointer,
  18705. "_glViewport": _glViewport,
  18706. "_gmtime": _gmtime,
  18707. "_gmtime_r": _gmtime_r,
  18708. "_gotoUnity": _gotoUnity,
  18709. "_inet_addr": _inet_addr,
  18710. "_llvm_ceil_f32": _llvm_ceil_f32,
  18711. "_llvm_ceil_f64": _llvm_ceil_f64,
  18712. "_llvm_copysign_f64": _llvm_copysign_f64,
  18713. "_llvm_cttz_i32": _llvm_cttz_i32,
  18714. "_llvm_exp2_f32": _llvm_exp2_f32,
  18715. "_llvm_fabs_f32": _llvm_fabs_f32,
  18716. "_llvm_fabs_f64": _llvm_fabs_f64,
  18717. "_llvm_floor_f32": _llvm_floor_f32,
  18718. "_llvm_floor_f64": _llvm_floor_f64,
  18719. "_llvm_log10_f32": _llvm_log10_f32,
  18720. "_llvm_log2_f32": _llvm_log2_f32,
  18721. "_llvm_pow_f64": _llvm_pow_f64,
  18722. "_llvm_sqrt_f32": _llvm_sqrt_f32,
  18723. "_llvm_trap": _llvm_trap,
  18724. "_llvm_trunc_f32": _llvm_trunc_f32,
  18725. "_localtime": _localtime,
  18726. "_localtime_r": _localtime_r,
  18727. "_mktime": _mktime,
  18728. "_nanosleep": _nanosleep,
  18729. "_pthread_cond_destroy": _pthread_cond_destroy,
  18730. "_pthread_cond_init": _pthread_cond_init,
  18731. "_pthread_cond_timedwait": _pthread_cond_timedwait,
  18732. "_pthread_cond_wait": _pthread_cond_wait,
  18733. "_pthread_getspecific": _pthread_getspecific,
  18734. "_pthread_key_create": _pthread_key_create,
  18735. "_pthread_key_delete": _pthread_key_delete,
  18736. "_pthread_mutex_destroy": _pthread_mutex_destroy,
  18737. "_pthread_mutex_init": _pthread_mutex_init,
  18738. "_pthread_mutexattr_destroy": _pthread_mutexattr_destroy,
  18739. "_pthread_mutexattr_init": _pthread_mutexattr_init,
  18740. "_pthread_mutexattr_setprotocol": _pthread_mutexattr_setprotocol,
  18741. "_pthread_mutexattr_settype": _pthread_mutexattr_settype,
  18742. "_pthread_once": _pthread_once,
  18743. "_pthread_setspecific": _pthread_setspecific,
  18744. "_sched_yield": _sched_yield,
  18745. "_setenv": _setenv,
  18746. "_sigaction": _sigaction,
  18747. "_sigemptyset": _sigemptyset,
  18748. "_strftime": _strftime,
  18749. "_sysconf": _sysconf,
  18750. "_time": _time,
  18751. "_tzset": _tzset,
  18752. "_unsetenv": _unsetenv,
  18753. "_usleep": _usleep,
  18754. "_utime": _utime,
  18755. "emscriptenWebGLComputeImageSize": emscriptenWebGLComputeImageSize,
  18756. "emscriptenWebGLGet": emscriptenWebGLGet,
  18757. "emscriptenWebGLGetBufferBinding": emscriptenWebGLGetBufferBinding,
  18758. "emscriptenWebGLGetHeapForType": emscriptenWebGLGetHeapForType,
  18759. "emscriptenWebGLGetIndexed": emscriptenWebGLGetIndexed,
  18760. "emscriptenWebGLGetShiftForType": emscriptenWebGLGetShiftForType,
  18761. "emscriptenWebGLGetTexPixelData": emscriptenWebGLGetTexPixelData,
  18762. "emscriptenWebGLGetUniform": emscriptenWebGLGetUniform,
  18763. "emscriptenWebGLGetVertexAttrib": emscriptenWebGLGetVertexAttrib,
  18764. "emscriptenWebGLValidateMapBufferTarget": emscriptenWebGLValidateMapBufferTarget,
  18765. "emscripten_get_canvas_element_size_js": emscripten_get_canvas_element_size_js,
  18766. "emscripten_set_canvas_element_size_js": emscripten_set_canvas_element_size_js,
  18767. "DYNAMICTOP_PTR": DYNAMICTOP_PTR,
  18768. "tempDoublePtr": tempDoublePtr,
  18769. "ABORT": ABORT,
  18770. "STACKTOP": STACKTOP,
  18771. "STACK_MAX": STACK_MAX
  18772. };
  18773. var asm = Module["asm"](Module.asmGlobalArg, Module.asmLibraryArg, buffer);
  18774. var real__InjectProfilerSample = asm["_InjectProfilerSample"];
  18775. asm["_InjectProfilerSample"] = (function() {
  18776. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18777. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18778. return real__InjectProfilerSample.apply(null, arguments);
  18779. });
  18780. var real__SendMessage = asm["_SendMessage"];
  18781. asm["_SendMessage"] = (function() {
  18782. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18783. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18784. return real__SendMessage.apply(null, arguments);
  18785. });
  18786. var real__SendMessageFloat = asm["_SendMessageFloat"];
  18787. asm["_SendMessageFloat"] = (function() {
  18788. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18789. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18790. return real__SendMessageFloat.apply(null, arguments);
  18791. });
  18792. var real__SendMessageString = asm["_SendMessageString"];
  18793. asm["_SendMessageString"] = (function() {
  18794. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18795. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18796. return real__SendMessageString.apply(null, arguments);
  18797. });
  18798. var real__SetFullscreen = asm["_SetFullscreen"];
  18799. asm["_SetFullscreen"] = (function() {
  18800. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18801. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18802. return real__SetFullscreen.apply(null, arguments);
  18803. });
  18804. var real___GLOBAL__sub_I_AIBindings_gen_cpp = asm["__GLOBAL__sub_I_AIBindings_gen_cpp"];
  18805. asm["__GLOBAL__sub_I_AIBindings_gen_cpp"] = (function() {
  18806. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18807. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18808. return real___GLOBAL__sub_I_AIBindings_gen_cpp.apply(null, arguments);
  18809. });
  18810. var real___GLOBAL__sub_I_AIScriptingClasses_cpp = asm["__GLOBAL__sub_I_AIScriptingClasses_cpp"];
  18811. asm["__GLOBAL__sub_I_AIScriptingClasses_cpp"] = (function() {
  18812. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18813. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18814. return real___GLOBAL__sub_I_AIScriptingClasses_cpp.apply(null, arguments);
  18815. });
  18816. var real___GLOBAL__sub_I_AccessibilityScriptingClasses_cpp = asm["__GLOBAL__sub_I_AccessibilityScriptingClasses_cpp"];
  18817. asm["__GLOBAL__sub_I_AccessibilityScriptingClasses_cpp"] = (function() {
  18818. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18819. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18820. return real___GLOBAL__sub_I_AccessibilityScriptingClasses_cpp.apply(null, arguments);
  18821. });
  18822. var real___GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp = asm["__GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp"];
  18823. asm["__GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp"] = (function() {
  18824. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18825. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18826. return real___GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp.apply(null, arguments);
  18827. });
  18828. var real___GLOBAL__sub_I_AnimationBindings_gen_cpp = asm["__GLOBAL__sub_I_AnimationBindings_gen_cpp"];
  18829. asm["__GLOBAL__sub_I_AnimationBindings_gen_cpp"] = (function() {
  18830. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18831. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18832. return real___GLOBAL__sub_I_AnimationBindings_gen_cpp.apply(null, arguments);
  18833. });
  18834. var real___GLOBAL__sub_I_AnimationClip_cpp = asm["__GLOBAL__sub_I_AnimationClip_cpp"];
  18835. asm["__GLOBAL__sub_I_AnimationClip_cpp"] = (function() {
  18836. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18837. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18838. return real___GLOBAL__sub_I_AnimationClip_cpp.apply(null, arguments);
  18839. });
  18840. var real___GLOBAL__sub_I_AnimationScriptingClasses_cpp = asm["__GLOBAL__sub_I_AnimationScriptingClasses_cpp"];
  18841. asm["__GLOBAL__sub_I_AnimationScriptingClasses_cpp"] = (function() {
  18842. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18843. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18844. return real___GLOBAL__sub_I_AnimationScriptingClasses_cpp.apply(null, arguments);
  18845. });
  18846. var real___GLOBAL__sub_I_AssetBundleFileSystem_cpp = asm["__GLOBAL__sub_I_AssetBundleFileSystem_cpp"];
  18847. asm["__GLOBAL__sub_I_AssetBundleFileSystem_cpp"] = (function() {
  18848. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18849. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18850. return real___GLOBAL__sub_I_AssetBundleFileSystem_cpp.apply(null, arguments);
  18851. });
  18852. var real___GLOBAL__sub_I_AssetBundleScriptingClasses_cpp = asm["__GLOBAL__sub_I_AssetBundleScriptingClasses_cpp"];
  18853. asm["__GLOBAL__sub_I_AssetBundleScriptingClasses_cpp"] = (function() {
  18854. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18855. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18856. return real___GLOBAL__sub_I_AssetBundleScriptingClasses_cpp.apply(null, arguments);
  18857. });
  18858. var real___GLOBAL__sub_I_AudioScriptingClasses_cpp = asm["__GLOBAL__sub_I_AudioScriptingClasses_cpp"];
  18859. asm["__GLOBAL__sub_I_AudioScriptingClasses_cpp"] = (function() {
  18860. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18861. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18862. return real___GLOBAL__sub_I_AudioScriptingClasses_cpp.apply(null, arguments);
  18863. });
  18864. var real___GLOBAL__sub_I_ClothScriptingClasses_cpp = asm["__GLOBAL__sub_I_ClothScriptingClasses_cpp"];
  18865. asm["__GLOBAL__sub_I_ClothScriptingClasses_cpp"] = (function() {
  18866. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18867. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18868. return real___GLOBAL__sub_I_ClothScriptingClasses_cpp.apply(null, arguments);
  18869. });
  18870. var real___GLOBAL__sub_I_CloudFoundationScriptingClasses_cpp = asm["__GLOBAL__sub_I_CloudFoundationScriptingClasses_cpp"];
  18871. asm["__GLOBAL__sub_I_CloudFoundationScriptingClasses_cpp"] = (function() {
  18872. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18873. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18874. return real___GLOBAL__sub_I_CloudFoundationScriptingClasses_cpp.apply(null, arguments);
  18875. });
  18876. var real___GLOBAL__sub_I_ConstraintJob_cpp = asm["__GLOBAL__sub_I_ConstraintJob_cpp"];
  18877. asm["__GLOBAL__sub_I_ConstraintJob_cpp"] = (function() {
  18878. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18879. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18880. return real___GLOBAL__sub_I_ConstraintJob_cpp.apply(null, arguments);
  18881. });
  18882. var real___GLOBAL__sub_I_CoreBindings_gen_cpp = asm["__GLOBAL__sub_I_CoreBindings_gen_cpp"];
  18883. asm["__GLOBAL__sub_I_CoreBindings_gen_cpp"] = (function() {
  18884. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18885. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18886. return real___GLOBAL__sub_I_CoreBindings_gen_cpp.apply(null, arguments);
  18887. });
  18888. var real___GLOBAL__sub_I_DSPGraphBindings_gen_cpp = asm["__GLOBAL__sub_I_DSPGraphBindings_gen_cpp"];
  18889. asm["__GLOBAL__sub_I_DSPGraphBindings_gen_cpp"] = (function() {
  18890. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18891. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18892. return real___GLOBAL__sub_I_DSPGraphBindings_gen_cpp.apply(null, arguments);
  18893. });
  18894. var real___GLOBAL__sub_I_DirectorScriptingClasses_cpp = asm["__GLOBAL__sub_I_DirectorScriptingClasses_cpp"];
  18895. asm["__GLOBAL__sub_I_DirectorScriptingClasses_cpp"] = (function() {
  18896. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18897. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18898. return real___GLOBAL__sub_I_DirectorScriptingClasses_cpp.apply(null, arguments);
  18899. });
  18900. var real___GLOBAL__sub_I_ExternalForcesModule_cpp = asm["__GLOBAL__sub_I_ExternalForcesModule_cpp"];
  18901. asm["__GLOBAL__sub_I_ExternalForcesModule_cpp"] = (function() {
  18902. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18903. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18904. return real___GLOBAL__sub_I_ExternalForcesModule_cpp.apply(null, arguments);
  18905. });
  18906. var real___GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp"];
  18907. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp"] = (function() {
  18908. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18909. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18910. return real___GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp.apply(null, arguments);
  18911. });
  18912. var real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp"];
  18913. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp"] = (function() {
  18914. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18915. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18916. return real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp.apply(null, arguments);
  18917. });
  18918. var real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp"];
  18919. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp"] = (function() {
  18920. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18921. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18922. return real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp.apply(null, arguments);
  18923. });
  18924. var real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp"];
  18925. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp"] = (function() {
  18926. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18927. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18928. return real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp.apply(null, arguments);
  18929. });
  18930. var real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp"];
  18931. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp"] = (function() {
  18932. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18933. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18934. return real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp.apply(null, arguments);
  18935. });
  18936. var real___GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp = asm["__GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp"];
  18937. asm["__GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp"] = (function() {
  18938. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18939. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18940. return real___GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp.apply(null, arguments);
  18941. });
  18942. var real___GLOBAL__sub_I_External_Yoga_Yoga_0_cpp = asm["__GLOBAL__sub_I_External_Yoga_Yoga_0_cpp"];
  18943. asm["__GLOBAL__sub_I_External_Yoga_Yoga_0_cpp"] = (function() {
  18944. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18945. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18946. return real___GLOBAL__sub_I_External_Yoga_Yoga_0_cpp.apply(null, arguments);
  18947. });
  18948. var real___GLOBAL__sub_I_External_il2cpp_builds_external_baselib_Platforms_WebGL_Source_0_cpp = asm["__GLOBAL__sub_I_External_il2cpp_builds_external_baselib_Platforms_WebGL_Source_0_cpp"];
  18949. asm["__GLOBAL__sub_I_External_il2cpp_builds_external_baselib_Platforms_WebGL_Source_0_cpp"] = (function() {
  18950. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18951. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18952. return real___GLOBAL__sub_I_External_il2cpp_builds_external_baselib_Platforms_WebGL_Source_0_cpp.apply(null, arguments);
  18953. });
  18954. var real___GLOBAL__sub_I_GUITexture_cpp = asm["__GLOBAL__sub_I_GUITexture_cpp"];
  18955. asm["__GLOBAL__sub_I_GUITexture_cpp"] = (function() {
  18956. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18957. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18958. return real___GLOBAL__sub_I_GUITexture_cpp.apply(null, arguments);
  18959. });
  18960. var real___GLOBAL__sub_I_GfxDeviceNull_cpp = asm["__GLOBAL__sub_I_GfxDeviceNull_cpp"];
  18961. asm["__GLOBAL__sub_I_GfxDeviceNull_cpp"] = (function() {
  18962. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18963. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18964. return real___GLOBAL__sub_I_GfxDeviceNull_cpp.apply(null, arguments);
  18965. });
  18966. var real___GLOBAL__sub_I_GridScriptingClasses_cpp = asm["__GLOBAL__sub_I_GridScriptingClasses_cpp"];
  18967. asm["__GLOBAL__sub_I_GridScriptingClasses_cpp"] = (function() {
  18968. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18969. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18970. return real___GLOBAL__sub_I_GridScriptingClasses_cpp.apply(null, arguments);
  18971. });
  18972. var real___GLOBAL__sub_I_IMGUIScriptingClasses_cpp = asm["__GLOBAL__sub_I_IMGUIScriptingClasses_cpp"];
  18973. asm["__GLOBAL__sub_I_IMGUIScriptingClasses_cpp"] = (function() {
  18974. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18975. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18976. return real___GLOBAL__sub_I_IMGUIScriptingClasses_cpp.apply(null, arguments);
  18977. });
  18978. var real___GLOBAL__sub_I_InputLegacyModuleRegistration_cpp = asm["__GLOBAL__sub_I_InputLegacyModuleRegistration_cpp"];
  18979. asm["__GLOBAL__sub_I_InputLegacyModuleRegistration_cpp"] = (function() {
  18980. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18981. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18982. return real___GLOBAL__sub_I_InputLegacyModuleRegistration_cpp.apply(null, arguments);
  18983. });
  18984. var real___GLOBAL__sub_I_InputLegacyScriptingClasses_cpp = asm["__GLOBAL__sub_I_InputLegacyScriptingClasses_cpp"];
  18985. asm["__GLOBAL__sub_I_InputLegacyScriptingClasses_cpp"] = (function() {
  18986. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18987. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18988. return real___GLOBAL__sub_I_InputLegacyScriptingClasses_cpp.apply(null, arguments);
  18989. });
  18990. var real___GLOBAL__sub_I_InputScriptingClasses_cpp = asm["__GLOBAL__sub_I_InputScriptingClasses_cpp"];
  18991. asm["__GLOBAL__sub_I_InputScriptingClasses_cpp"] = (function() {
  18992. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18993. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  18994. return real___GLOBAL__sub_I_InputScriptingClasses_cpp.apply(null, arguments);
  18995. });
  18996. var real___GLOBAL__sub_I_LineRenderer_cpp = asm["__GLOBAL__sub_I_LineRenderer_cpp"];
  18997. asm["__GLOBAL__sub_I_LineRenderer_cpp"] = (function() {
  18998. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  18999. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19000. return real___GLOBAL__sub_I_LineRenderer_cpp.apply(null, arguments);
  19001. });
  19002. var real___GLOBAL__sub_I_LogAssert_cpp = asm["__GLOBAL__sub_I_LogAssert_cpp"];
  19003. asm["__GLOBAL__sub_I_LogAssert_cpp"] = (function() {
  19004. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19005. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19006. return real___GLOBAL__sub_I_LogAssert_cpp.apply(null, arguments);
  19007. });
  19008. var real___GLOBAL__sub_I_Lump_libil2cpp_gc_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_gc_cpp"];
  19009. asm["__GLOBAL__sub_I_Lump_libil2cpp_gc_cpp"] = (function() {
  19010. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19011. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19012. return real___GLOBAL__sub_I_Lump_libil2cpp_gc_cpp.apply(null, arguments);
  19013. });
  19014. var real___GLOBAL__sub_I_Lump_libil2cpp_icalls_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_icalls_cpp"];
  19015. asm["__GLOBAL__sub_I_Lump_libil2cpp_icalls_cpp"] = (function() {
  19016. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19017. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19018. return real___GLOBAL__sub_I_Lump_libil2cpp_icalls_cpp.apply(null, arguments);
  19019. });
  19020. var real___GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp"];
  19021. asm["__GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp"] = (function() {
  19022. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19023. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19024. return real___GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp.apply(null, arguments);
  19025. });
  19026. var real___GLOBAL__sub_I_Lump_libil2cpp_mono_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_mono_cpp"];
  19027. asm["__GLOBAL__sub_I_Lump_libil2cpp_mono_cpp"] = (function() {
  19028. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19029. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19030. return real___GLOBAL__sub_I_Lump_libil2cpp_mono_cpp.apply(null, arguments);
  19031. });
  19032. var real___GLOBAL__sub_I_Lump_libil2cpp_os_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_os_cpp"];
  19033. asm["__GLOBAL__sub_I_Lump_libil2cpp_os_cpp"] = (function() {
  19034. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19035. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19036. return real___GLOBAL__sub_I_Lump_libil2cpp_os_cpp.apply(null, arguments);
  19037. });
  19038. var real___GLOBAL__sub_I_Lump_libil2cpp_utils_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_utils_cpp"];
  19039. asm["__GLOBAL__sub_I_Lump_libil2cpp_utils_cpp"] = (function() {
  19040. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19041. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19042. return real___GLOBAL__sub_I_Lump_libil2cpp_utils_cpp.apply(null, arguments);
  19043. });
  19044. var real___GLOBAL__sub_I_Lump_libil2cpp_vm_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_vm_cpp"];
  19045. asm["__GLOBAL__sub_I_Lump_libil2cpp_vm_cpp"] = (function() {
  19046. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19047. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19048. return real___GLOBAL__sub_I_Lump_libil2cpp_vm_cpp.apply(null, arguments);
  19049. });
  19050. var real___GLOBAL__sub_I_Lump_libil2cpp_vm_utils_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_vm_utils_cpp"];
  19051. asm["__GLOBAL__sub_I_Lump_libil2cpp_vm_utils_cpp"] = (function() {
  19052. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19053. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19054. return real___GLOBAL__sub_I_Lump_libil2cpp_vm_utils_cpp.apply(null, arguments);
  19055. });
  19056. var real___GLOBAL__sub_I_Mesh_cpp = asm["__GLOBAL__sub_I_Mesh_cpp"];
  19057. asm["__GLOBAL__sub_I_Mesh_cpp"] = (function() {
  19058. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19059. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19060. return real___GLOBAL__sub_I_Mesh_cpp.apply(null, arguments);
  19061. });
  19062. var real___GLOBAL__sub_I_Modules_AI_1_cpp = asm["__GLOBAL__sub_I_Modules_AI_1_cpp"];
  19063. asm["__GLOBAL__sub_I_Modules_AI_1_cpp"] = (function() {
  19064. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19065. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19066. return real___GLOBAL__sub_I_Modules_AI_1_cpp.apply(null, arguments);
  19067. });
  19068. var real___GLOBAL__sub_I_Modules_AI_Builder_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_Builder_0_cpp"];
  19069. asm["__GLOBAL__sub_I_Modules_AI_Builder_0_cpp"] = (function() {
  19070. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19071. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19072. return real___GLOBAL__sub_I_Modules_AI_Builder_0_cpp.apply(null, arguments);
  19073. });
  19074. var real___GLOBAL__sub_I_Modules_AI_Crowd_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_Crowd_0_cpp"];
  19075. asm["__GLOBAL__sub_I_Modules_AI_Crowd_0_cpp"] = (function() {
  19076. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19077. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19078. return real___GLOBAL__sub_I_Modules_AI_Crowd_0_cpp.apply(null, arguments);
  19079. });
  19080. var real___GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp"];
  19081. asm["__GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp"] = (function() {
  19082. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19083. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19084. return real___GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp.apply(null, arguments);
  19085. });
  19086. var real___GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp"];
  19087. asm["__GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp"] = (function() {
  19088. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19089. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19090. return real___GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp.apply(null, arguments);
  19091. });
  19092. var real___GLOBAL__sub_I_Modules_Animation_0_cpp = asm["__GLOBAL__sub_I_Modules_Animation_0_cpp"];
  19093. asm["__GLOBAL__sub_I_Modules_Animation_0_cpp"] = (function() {
  19094. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19095. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19096. return real___GLOBAL__sub_I_Modules_Animation_0_cpp.apply(null, arguments);
  19097. });
  19098. var real___GLOBAL__sub_I_Modules_Animation_2_cpp = asm["__GLOBAL__sub_I_Modules_Animation_2_cpp"];
  19099. asm["__GLOBAL__sub_I_Modules_Animation_2_cpp"] = (function() {
  19100. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19101. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19102. return real___GLOBAL__sub_I_Modules_Animation_2_cpp.apply(null, arguments);
  19103. });
  19104. var real___GLOBAL__sub_I_Modules_Animation_3_cpp = asm["__GLOBAL__sub_I_Modules_Animation_3_cpp"];
  19105. asm["__GLOBAL__sub_I_Modules_Animation_3_cpp"] = (function() {
  19106. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19107. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19108. return real___GLOBAL__sub_I_Modules_Animation_3_cpp.apply(null, arguments);
  19109. });
  19110. var real___GLOBAL__sub_I_Modules_Animation_4_cpp = asm["__GLOBAL__sub_I_Modules_Animation_4_cpp"];
  19111. asm["__GLOBAL__sub_I_Modules_Animation_4_cpp"] = (function() {
  19112. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19113. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19114. return real___GLOBAL__sub_I_Modules_Animation_4_cpp.apply(null, arguments);
  19115. });
  19116. var real___GLOBAL__sub_I_Modules_Animation_5_cpp = asm["__GLOBAL__sub_I_Modules_Animation_5_cpp"];
  19117. asm["__GLOBAL__sub_I_Modules_Animation_5_cpp"] = (function() {
  19118. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19119. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19120. return real___GLOBAL__sub_I_Modules_Animation_5_cpp.apply(null, arguments);
  19121. });
  19122. var real___GLOBAL__sub_I_Modules_Animation_6_cpp = asm["__GLOBAL__sub_I_Modules_Animation_6_cpp"];
  19123. asm["__GLOBAL__sub_I_Modules_Animation_6_cpp"] = (function() {
  19124. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19125. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19126. return real___GLOBAL__sub_I_Modules_Animation_6_cpp.apply(null, arguments);
  19127. });
  19128. var real___GLOBAL__sub_I_Modules_Animation_7_cpp = asm["__GLOBAL__sub_I_Modules_Animation_7_cpp"];
  19129. asm["__GLOBAL__sub_I_Modules_Animation_7_cpp"] = (function() {
  19130. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19131. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19132. return real___GLOBAL__sub_I_Modules_Animation_7_cpp.apply(null, arguments);
  19133. });
  19134. var real___GLOBAL__sub_I_Modules_Animation_Constraints_0_cpp = asm["__GLOBAL__sub_I_Modules_Animation_Constraints_0_cpp"];
  19135. asm["__GLOBAL__sub_I_Modules_Animation_Constraints_0_cpp"] = (function() {
  19136. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19137. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19138. return real___GLOBAL__sub_I_Modules_Animation_Constraints_0_cpp.apply(null, arguments);
  19139. });
  19140. var real___GLOBAL__sub_I_Modules_Animation_Director_0_cpp = asm["__GLOBAL__sub_I_Modules_Animation_Director_0_cpp"];
  19141. asm["__GLOBAL__sub_I_Modules_Animation_Director_0_cpp"] = (function() {
  19142. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19143. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19144. return real___GLOBAL__sub_I_Modules_Animation_Director_0_cpp.apply(null, arguments);
  19145. });
  19146. var real___GLOBAL__sub_I_Modules_Animation_Director_1_cpp = asm["__GLOBAL__sub_I_Modules_Animation_Director_1_cpp"];
  19147. asm["__GLOBAL__sub_I_Modules_Animation_Director_1_cpp"] = (function() {
  19148. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19149. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19150. return real___GLOBAL__sub_I_Modules_Animation_Director_1_cpp.apply(null, arguments);
  19151. });
  19152. var real___GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp"];
  19153. asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp"] = (function() {
  19154. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19155. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19156. return real___GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp.apply(null, arguments);
  19157. });
  19158. var real___GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp"];
  19159. asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp"] = (function() {
  19160. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19161. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19162. return real___GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp.apply(null, arguments);
  19163. });
  19164. var real___GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp = asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp"];
  19165. asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp"] = (function() {
  19166. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19167. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19168. return real___GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp.apply(null, arguments);
  19169. });
  19170. var real___GLOBAL__sub_I_Modules_Audio_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_0_cpp"];
  19171. asm["__GLOBAL__sub_I_Modules_Audio_Public_0_cpp"] = (function() {
  19172. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19173. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19174. return real___GLOBAL__sub_I_Modules_Audio_Public_0_cpp.apply(null, arguments);
  19175. });
  19176. var real___GLOBAL__sub_I_Modules_Audio_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_1_cpp"];
  19177. asm["__GLOBAL__sub_I_Modules_Audio_Public_1_cpp"] = (function() {
  19178. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19179. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19180. return real___GLOBAL__sub_I_Modules_Audio_Public_1_cpp.apply(null, arguments);
  19181. });
  19182. var real___GLOBAL__sub_I_Modules_Audio_Public_3_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_3_cpp"];
  19183. asm["__GLOBAL__sub_I_Modules_Audio_Public_3_cpp"] = (function() {
  19184. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19185. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19186. return real___GLOBAL__sub_I_Modules_Audio_Public_3_cpp.apply(null, arguments);
  19187. });
  19188. var real___GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp"];
  19189. asm["__GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp"] = (function() {
  19190. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19191. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19192. return real___GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp.apply(null, arguments);
  19193. });
  19194. var real___GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp"];
  19195. asm["__GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp"] = (function() {
  19196. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19197. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19198. return real___GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp.apply(null, arguments);
  19199. });
  19200. var real___GLOBAL__sub_I_Modules_Cloth_0_cpp = asm["__GLOBAL__sub_I_Modules_Cloth_0_cpp"];
  19201. asm["__GLOBAL__sub_I_Modules_Cloth_0_cpp"] = (function() {
  19202. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19203. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19204. return real___GLOBAL__sub_I_Modules_Cloth_0_cpp.apply(null, arguments);
  19205. });
  19206. var real___GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp"];
  19207. asm["__GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp"] = (function() {
  19208. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19209. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19210. return real___GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp.apply(null, arguments);
  19211. });
  19212. var real___GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp"];
  19213. asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp"] = (function() {
  19214. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19215. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19216. return real___GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp.apply(null, arguments);
  19217. });
  19218. var real___GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp"];
  19219. asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp"] = (function() {
  19220. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19221. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19222. return real___GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp.apply(null, arguments);
  19223. });
  19224. var real___GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp = asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp"];
  19225. asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp"] = (function() {
  19226. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19227. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19228. return real___GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp.apply(null, arguments);
  19229. });
  19230. var real___GLOBAL__sub_I_Modules_Grid_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Grid_Public_0_cpp"];
  19231. asm["__GLOBAL__sub_I_Modules_Grid_Public_0_cpp"] = (function() {
  19232. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19233. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19234. return real___GLOBAL__sub_I_Modules_Grid_Public_0_cpp.apply(null, arguments);
  19235. });
  19236. var real___GLOBAL__sub_I_Modules_IMGUI_0_cpp = asm["__GLOBAL__sub_I_Modules_IMGUI_0_cpp"];
  19237. asm["__GLOBAL__sub_I_Modules_IMGUI_0_cpp"] = (function() {
  19238. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19239. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19240. return real___GLOBAL__sub_I_Modules_IMGUI_0_cpp.apply(null, arguments);
  19241. });
  19242. var real___GLOBAL__sub_I_Modules_IMGUI_1_cpp = asm["__GLOBAL__sub_I_Modules_IMGUI_1_cpp"];
  19243. asm["__GLOBAL__sub_I_Modules_IMGUI_1_cpp"] = (function() {
  19244. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19245. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19246. return real___GLOBAL__sub_I_Modules_IMGUI_1_cpp.apply(null, arguments);
  19247. });
  19248. var real___GLOBAL__sub_I_Modules_Input_Private_0_cpp = asm["__GLOBAL__sub_I_Modules_Input_Private_0_cpp"];
  19249. asm["__GLOBAL__sub_I_Modules_Input_Private_0_cpp"] = (function() {
  19250. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19251. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19252. return real___GLOBAL__sub_I_Modules_Input_Private_0_cpp.apply(null, arguments);
  19253. });
  19254. var real___GLOBAL__sub_I_Modules_ParticleSystem_0_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_0_cpp"];
  19255. asm["__GLOBAL__sub_I_Modules_ParticleSystem_0_cpp"] = (function() {
  19256. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19257. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19258. return real___GLOBAL__sub_I_Modules_ParticleSystem_0_cpp.apply(null, arguments);
  19259. });
  19260. var real___GLOBAL__sub_I_Modules_ParticleSystem_1_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_1_cpp"];
  19261. asm["__GLOBAL__sub_I_Modules_ParticleSystem_1_cpp"] = (function() {
  19262. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19263. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19264. return real___GLOBAL__sub_I_Modules_ParticleSystem_1_cpp.apply(null, arguments);
  19265. });
  19266. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp"];
  19267. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp"] = (function() {
  19268. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19269. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19270. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp.apply(null, arguments);
  19271. });
  19272. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp"];
  19273. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp"] = (function() {
  19274. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19275. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19276. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp.apply(null, arguments);
  19277. });
  19278. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp"];
  19279. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp"] = (function() {
  19280. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19281. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19282. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp.apply(null, arguments);
  19283. });
  19284. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp"];
  19285. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp"] = (function() {
  19286. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19287. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19288. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp.apply(null, arguments);
  19289. });
  19290. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp"];
  19291. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp"] = (function() {
  19292. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19293. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19294. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp.apply(null, arguments);
  19295. });
  19296. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp"];
  19297. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp"] = (function() {
  19298. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19299. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19300. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp.apply(null, arguments);
  19301. });
  19302. var real___GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp = asm["__GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp"];
  19303. asm["__GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp"] = (function() {
  19304. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19305. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19306. return real___GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp.apply(null, arguments);
  19307. });
  19308. var real___GLOBAL__sub_I_Modules_Physics2D_0_cpp = asm["__GLOBAL__sub_I_Modules_Physics2D_0_cpp"];
  19309. asm["__GLOBAL__sub_I_Modules_Physics2D_0_cpp"] = (function() {
  19310. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19311. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19312. return real___GLOBAL__sub_I_Modules_Physics2D_0_cpp.apply(null, arguments);
  19313. });
  19314. var real___GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp"];
  19315. asm["__GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp"] = (function() {
  19316. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19317. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19318. return real___GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp.apply(null, arguments);
  19319. });
  19320. var real___GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp"];
  19321. asm["__GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp"] = (function() {
  19322. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19323. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19324. return real___GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp.apply(null, arguments);
  19325. });
  19326. var real___GLOBAL__sub_I_Modules_Physics_0_cpp = asm["__GLOBAL__sub_I_Modules_Physics_0_cpp"];
  19327. asm["__GLOBAL__sub_I_Modules_Physics_0_cpp"] = (function() {
  19328. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19329. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19330. return real___GLOBAL__sub_I_Modules_Physics_0_cpp.apply(null, arguments);
  19331. });
  19332. var real___GLOBAL__sub_I_Modules_Physics_2_cpp = asm["__GLOBAL__sub_I_Modules_Physics_2_cpp"];
  19333. asm["__GLOBAL__sub_I_Modules_Physics_2_cpp"] = (function() {
  19334. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19335. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19336. return real___GLOBAL__sub_I_Modules_Physics_2_cpp.apply(null, arguments);
  19337. });
  19338. var real___GLOBAL__sub_I_Modules_Physics_3_cpp = asm["__GLOBAL__sub_I_Modules_Physics_3_cpp"];
  19339. asm["__GLOBAL__sub_I_Modules_Physics_3_cpp"] = (function() {
  19340. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19341. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19342. return real___GLOBAL__sub_I_Modules_Physics_3_cpp.apply(null, arguments);
  19343. });
  19344. var real___GLOBAL__sub_I_Modules_Physics_4_cpp = asm["__GLOBAL__sub_I_Modules_Physics_4_cpp"];
  19345. asm["__GLOBAL__sub_I_Modules_Physics_4_cpp"] = (function() {
  19346. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19347. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19348. return real___GLOBAL__sub_I_Modules_Physics_4_cpp.apply(null, arguments);
  19349. });
  19350. var real___GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp = asm["__GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp"];
  19351. asm["__GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp"] = (function() {
  19352. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19353. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19354. return real___GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp.apply(null, arguments);
  19355. });
  19356. var real___GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp"];
  19357. asm["__GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp"] = (function() {
  19358. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19359. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19360. return real___GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp.apply(null, arguments);
  19361. });
  19362. var real___GLOBAL__sub_I_Modules_Profiler_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Public_0_cpp"];
  19363. asm["__GLOBAL__sub_I_Modules_Profiler_Public_0_cpp"] = (function() {
  19364. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19365. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19366. return real___GLOBAL__sub_I_Modules_Profiler_Public_0_cpp.apply(null, arguments);
  19367. });
  19368. var real___GLOBAL__sub_I_Modules_Profiler_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Public_1_cpp"];
  19369. asm["__GLOBAL__sub_I_Modules_Profiler_Public_1_cpp"] = (function() {
  19370. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19371. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19372. return real___GLOBAL__sub_I_Modules_Profiler_Public_1_cpp.apply(null, arguments);
  19373. });
  19374. var real___GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp"];
  19375. asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp"] = (function() {
  19376. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19377. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19378. return real___GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp.apply(null, arguments);
  19379. });
  19380. var real___GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp"];
  19381. asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp"] = (function() {
  19382. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19383. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19384. return real___GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp.apply(null, arguments);
  19385. });
  19386. var real___GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp"];
  19387. asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp"] = (function() {
  19388. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19389. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19390. return real___GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp.apply(null, arguments);
  19391. });
  19392. var real___GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp = asm["__GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp"];
  19393. asm["__GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp"] = (function() {
  19394. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19395. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19396. return real___GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp.apply(null, arguments);
  19397. });
  19398. var real___GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp = asm["__GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp"];
  19399. asm["__GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp"] = (function() {
  19400. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19401. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19402. return real___GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp.apply(null, arguments);
  19403. });
  19404. var real___GLOBAL__sub_I_Modules_Subsystems_0_cpp = asm["__GLOBAL__sub_I_Modules_Subsystems_0_cpp"];
  19405. asm["__GLOBAL__sub_I_Modules_Subsystems_0_cpp"] = (function() {
  19406. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19407. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19408. return real___GLOBAL__sub_I_Modules_Subsystems_0_cpp.apply(null, arguments);
  19409. });
  19410. var real___GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp = asm["__GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp"];
  19411. asm["__GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp"] = (function() {
  19412. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19413. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19414. return real___GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp.apply(null, arguments);
  19415. });
  19416. var real___GLOBAL__sub_I_Modules_Terrain_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_Public_0_cpp"];
  19417. asm["__GLOBAL__sub_I_Modules_Terrain_Public_0_cpp"] = (function() {
  19418. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19419. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19420. return real___GLOBAL__sub_I_Modules_Terrain_Public_0_cpp.apply(null, arguments);
  19421. });
  19422. var real___GLOBAL__sub_I_Modules_Terrain_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_Public_1_cpp"];
  19423. asm["__GLOBAL__sub_I_Modules_Terrain_Public_1_cpp"] = (function() {
  19424. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19425. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19426. return real___GLOBAL__sub_I_Modules_Terrain_Public_1_cpp.apply(null, arguments);
  19427. });
  19428. var real___GLOBAL__sub_I_Modules_Terrain_Public_2_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_Public_2_cpp"];
  19429. asm["__GLOBAL__sub_I_Modules_Terrain_Public_2_cpp"] = (function() {
  19430. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19431. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19432. return real___GLOBAL__sub_I_Modules_Terrain_Public_2_cpp.apply(null, arguments);
  19433. });
  19434. var real___GLOBAL__sub_I_Modules_Terrain_Public_3_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_Public_3_cpp"];
  19435. asm["__GLOBAL__sub_I_Modules_Terrain_Public_3_cpp"] = (function() {
  19436. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19437. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19438. return real___GLOBAL__sub_I_Modules_Terrain_Public_3_cpp.apply(null, arguments);
  19439. });
  19440. var real___GLOBAL__sub_I_Modules_Terrain_VR_0_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_VR_0_cpp"];
  19441. asm["__GLOBAL__sub_I_Modules_Terrain_VR_0_cpp"] = (function() {
  19442. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19443. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19444. return real___GLOBAL__sub_I_Modules_Terrain_VR_0_cpp.apply(null, arguments);
  19445. });
  19446. var real___GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp = asm["__GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp"];
  19447. asm["__GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp"] = (function() {
  19448. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19449. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19450. return real___GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp.apply(null, arguments);
  19451. });
  19452. var real___GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp"];
  19453. asm["__GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp"] = (function() {
  19454. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19455. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19456. return real___GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp.apply(null, arguments);
  19457. });
  19458. var real___GLOBAL__sub_I_Modules_Tilemap_0_cpp = asm["__GLOBAL__sub_I_Modules_Tilemap_0_cpp"];
  19459. asm["__GLOBAL__sub_I_Modules_Tilemap_0_cpp"] = (function() {
  19460. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19461. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19462. return real___GLOBAL__sub_I_Modules_Tilemap_0_cpp.apply(null, arguments);
  19463. });
  19464. var real___GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp"];
  19465. asm["__GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp"] = (function() {
  19466. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19467. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19468. return real___GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp.apply(null, arguments);
  19469. });
  19470. var real___GLOBAL__sub_I_Modules_UIElementsNative_0_cpp = asm["__GLOBAL__sub_I_Modules_UIElementsNative_0_cpp"];
  19471. asm["__GLOBAL__sub_I_Modules_UIElementsNative_0_cpp"] = (function() {
  19472. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19473. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19474. return real___GLOBAL__sub_I_Modules_UIElementsNative_0_cpp.apply(null, arguments);
  19475. });
  19476. var real___GLOBAL__sub_I_Modules_UI_0_cpp = asm["__GLOBAL__sub_I_Modules_UI_0_cpp"];
  19477. asm["__GLOBAL__sub_I_Modules_UI_0_cpp"] = (function() {
  19478. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19479. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19480. return real___GLOBAL__sub_I_Modules_UI_0_cpp.apply(null, arguments);
  19481. });
  19482. var real___GLOBAL__sub_I_Modules_UI_1_cpp = asm["__GLOBAL__sub_I_Modules_UI_1_cpp"];
  19483. asm["__GLOBAL__sub_I_Modules_UI_1_cpp"] = (function() {
  19484. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19485. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19486. return real___GLOBAL__sub_I_Modules_UI_1_cpp.apply(null, arguments);
  19487. });
  19488. var real___GLOBAL__sub_I_Modules_UI_2_cpp = asm["__GLOBAL__sub_I_Modules_UI_2_cpp"];
  19489. asm["__GLOBAL__sub_I_Modules_UI_2_cpp"] = (function() {
  19490. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19491. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19492. return real___GLOBAL__sub_I_Modules_UI_2_cpp.apply(null, arguments);
  19493. });
  19494. var real___GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp = asm["__GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp"];
  19495. asm["__GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp"] = (function() {
  19496. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19497. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19498. return real___GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp.apply(null, arguments);
  19499. });
  19500. var real___GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp"];
  19501. asm["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp"] = (function() {
  19502. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19503. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19504. return real___GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp.apply(null, arguments);
  19505. });
  19506. var real___GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp = asm["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp"];
  19507. asm["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp"] = (function() {
  19508. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19509. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19510. return real___GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp.apply(null, arguments);
  19511. });
  19512. var real___GLOBAL__sub_I_Modules_VFX_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_VFX_Public_0_cpp"];
  19513. asm["__GLOBAL__sub_I_Modules_VFX_Public_0_cpp"] = (function() {
  19514. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19515. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19516. return real___GLOBAL__sub_I_Modules_VFX_Public_0_cpp.apply(null, arguments);
  19517. });
  19518. var real___GLOBAL__sub_I_Modules_VFX_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_VFX_Public_1_cpp"];
  19519. asm["__GLOBAL__sub_I_Modules_VFX_Public_1_cpp"] = (function() {
  19520. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19521. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19522. return real___GLOBAL__sub_I_Modules_VFX_Public_1_cpp.apply(null, arguments);
  19523. });
  19524. var real___GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp = asm["__GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp"];
  19525. asm["__GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp"] = (function() {
  19526. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19527. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19528. return real___GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp.apply(null, arguments);
  19529. });
  19530. var real___GLOBAL__sub_I_Modules_VR_0_cpp = asm["__GLOBAL__sub_I_Modules_VR_0_cpp"];
  19531. asm["__GLOBAL__sub_I_Modules_VR_0_cpp"] = (function() {
  19532. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19533. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19534. return real___GLOBAL__sub_I_Modules_VR_0_cpp.apply(null, arguments);
  19535. });
  19536. var real___GLOBAL__sub_I_Modules_VR_1_cpp = asm["__GLOBAL__sub_I_Modules_VR_1_cpp"];
  19537. asm["__GLOBAL__sub_I_Modules_VR_1_cpp"] = (function() {
  19538. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19539. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19540. return real___GLOBAL__sub_I_Modules_VR_1_cpp.apply(null, arguments);
  19541. });
  19542. var real___GLOBAL__sub_I_Modules_Vehicles_0_cpp = asm["__GLOBAL__sub_I_Modules_Vehicles_0_cpp"];
  19543. asm["__GLOBAL__sub_I_Modules_Vehicles_0_cpp"] = (function() {
  19544. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19545. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19546. return real___GLOBAL__sub_I_Modules_Vehicles_0_cpp.apply(null, arguments);
  19547. });
  19548. var real___GLOBAL__sub_I_Modules_Video_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Video_Public_0_cpp"];
  19549. asm["__GLOBAL__sub_I_Modules_Video_Public_0_cpp"] = (function() {
  19550. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19551. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19552. return real___GLOBAL__sub_I_Modules_Video_Public_0_cpp.apply(null, arguments);
  19553. });
  19554. var real___GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp = asm["__GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp"];
  19555. asm["__GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp"] = (function() {
  19556. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19557. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19558. return real___GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp.apply(null, arguments);
  19559. });
  19560. var real___GLOBAL__sub_I_Modules_XR_0_cpp = asm["__GLOBAL__sub_I_Modules_XR_0_cpp"];
  19561. asm["__GLOBAL__sub_I_Modules_XR_0_cpp"] = (function() {
  19562. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19563. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19564. return real___GLOBAL__sub_I_Modules_XR_0_cpp.apply(null, arguments);
  19565. });
  19566. var real___GLOBAL__sub_I_Modules_XR_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_XR_Public_0_cpp"];
  19567. asm["__GLOBAL__sub_I_Modules_XR_Public_0_cpp"] = (function() {
  19568. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19569. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19570. return real___GLOBAL__sub_I_Modules_XR_Public_0_cpp.apply(null, arguments);
  19571. });
  19572. var real___GLOBAL__sub_I_Modules_XR_Stats_0_cpp = asm["__GLOBAL__sub_I_Modules_XR_Stats_0_cpp"];
  19573. asm["__GLOBAL__sub_I_Modules_XR_Stats_0_cpp"] = (function() {
  19574. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19575. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19576. return real___GLOBAL__sub_I_Modules_XR_Stats_0_cpp.apply(null, arguments);
  19577. });
  19578. var real___GLOBAL__sub_I_Modules_XR_Subsystems_Display_0_cpp = asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Display_0_cpp"];
  19579. asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Display_0_cpp"] = (function() {
  19580. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19581. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19582. return real___GLOBAL__sub_I_Modules_XR_Subsystems_Display_0_cpp.apply(null, arguments);
  19583. });
  19584. var real___GLOBAL__sub_I_Modules_XR_Subsystems_Display_1_cpp = asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Display_1_cpp"];
  19585. asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Display_1_cpp"] = (function() {
  19586. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19587. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19588. return real___GLOBAL__sub_I_Modules_XR_Subsystems_Display_1_cpp.apply(null, arguments);
  19589. });
  19590. var real___GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_0_cpp"];
  19591. asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_0_cpp"] = (function() {
  19592. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19593. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19594. return real___GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_0_cpp.apply(null, arguments);
  19595. });
  19596. var real___GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp"];
  19597. asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp"] = (function() {
  19598. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19599. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19600. return real___GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp.apply(null, arguments);
  19601. });
  19602. var real___GLOBAL__sub_I_Modules_XR_Subsystems_Meshing_0_cpp = asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Meshing_0_cpp"];
  19603. asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Meshing_0_cpp"] = (function() {
  19604. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19605. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19606. return real___GLOBAL__sub_I_Modules_XR_Subsystems_Meshing_0_cpp.apply(null, arguments);
  19607. });
  19608. var real___GLOBAL__sub_I_Modules_XR_Tracing_0_cpp = asm["__GLOBAL__sub_I_Modules_XR_Tracing_0_cpp"];
  19609. asm["__GLOBAL__sub_I_Modules_XR_Tracing_0_cpp"] = (function() {
  19610. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19611. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19612. return real___GLOBAL__sub_I_Modules_XR_Tracing_0_cpp.apply(null, arguments);
  19613. });
  19614. var real___GLOBAL__sub_I_NoiseModule_cpp = asm["__GLOBAL__sub_I_NoiseModule_cpp"];
  19615. asm["__GLOBAL__sub_I_NoiseModule_cpp"] = (function() {
  19616. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19617. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19618. return real___GLOBAL__sub_I_NoiseModule_cpp.apply(null, arguments);
  19619. });
  19620. var real___GLOBAL__sub_I_ParticleSystemBindings_gen_cpp = asm["__GLOBAL__sub_I_ParticleSystemBindings_gen_cpp"];
  19621. asm["__GLOBAL__sub_I_ParticleSystemBindings_gen_cpp"] = (function() {
  19622. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19623. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19624. return real___GLOBAL__sub_I_ParticleSystemBindings_gen_cpp.apply(null, arguments);
  19625. });
  19626. var real___GLOBAL__sub_I_ParticleSystemGeometryJob_cpp = asm["__GLOBAL__sub_I_ParticleSystemGeometryJob_cpp"];
  19627. asm["__GLOBAL__sub_I_ParticleSystemGeometryJob_cpp"] = (function() {
  19628. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19629. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19630. return real___GLOBAL__sub_I_ParticleSystemGeometryJob_cpp.apply(null, arguments);
  19631. });
  19632. var real___GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp = asm["__GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp"];
  19633. asm["__GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp"] = (function() {
  19634. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19635. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19636. return real___GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp.apply(null, arguments);
  19637. });
  19638. var real___GLOBAL__sub_I_Physics2DScriptingClasses_cpp = asm["__GLOBAL__sub_I_Physics2DScriptingClasses_cpp"];
  19639. asm["__GLOBAL__sub_I_Physics2DScriptingClasses_cpp"] = (function() {
  19640. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19641. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19642. return real___GLOBAL__sub_I_Physics2DScriptingClasses_cpp.apply(null, arguments);
  19643. });
  19644. var real___GLOBAL__sub_I_PhysicsBindings_gen_cpp = asm["__GLOBAL__sub_I_PhysicsBindings_gen_cpp"];
  19645. asm["__GLOBAL__sub_I_PhysicsBindings_gen_cpp"] = (function() {
  19646. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19647. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19648. return real___GLOBAL__sub_I_PhysicsBindings_gen_cpp.apply(null, arguments);
  19649. });
  19650. var real___GLOBAL__sub_I_PhysicsQuery_cpp = asm["__GLOBAL__sub_I_PhysicsQuery_cpp"];
  19651. asm["__GLOBAL__sub_I_PhysicsQuery_cpp"] = (function() {
  19652. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19653. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19654. return real___GLOBAL__sub_I_PhysicsQuery_cpp.apply(null, arguments);
  19655. });
  19656. var real___GLOBAL__sub_I_PhysicsScene_cpp = asm["__GLOBAL__sub_I_PhysicsScene_cpp"];
  19657. asm["__GLOBAL__sub_I_PhysicsScene_cpp"] = (function() {
  19658. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19659. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19660. return real___GLOBAL__sub_I_PhysicsScene_cpp.apply(null, arguments);
  19661. });
  19662. var real___GLOBAL__sub_I_PhysicsScriptingClasses_cpp = asm["__GLOBAL__sub_I_PhysicsScriptingClasses_cpp"];
  19663. asm["__GLOBAL__sub_I_PhysicsScriptingClasses_cpp"] = (function() {
  19664. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19665. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19666. return real___GLOBAL__sub_I_PhysicsScriptingClasses_cpp.apply(null, arguments);
  19667. });
  19668. var real___GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Source_0_cpp = asm["__GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Source_0_cpp"];
  19669. asm["__GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Source_0_cpp"] = (function() {
  19670. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19671. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19672. return real___GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Source_0_cpp.apply(null, arguments);
  19673. });
  19674. var real___GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp = asm["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp"];
  19675. asm["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp"] = (function() {
  19676. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19677. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19678. return real___GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp.apply(null, arguments);
  19679. });
  19680. var real___GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp = asm["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp"];
  19681. asm["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp"] = (function() {
  19682. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19683. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19684. return real___GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp.apply(null, arguments);
  19685. });
  19686. var real___GLOBAL__sub_I_PluginInterfaceVR_cpp = asm["__GLOBAL__sub_I_PluginInterfaceVR_cpp"];
  19687. asm["__GLOBAL__sub_I_PluginInterfaceVR_cpp"] = (function() {
  19688. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19689. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19690. return real___GLOBAL__sub_I_PluginInterfaceVR_cpp.apply(null, arguments);
  19691. });
  19692. var real___GLOBAL__sub_I_QualitySettings_cpp = asm["__GLOBAL__sub_I_QualitySettings_cpp"];
  19693. asm["__GLOBAL__sub_I_QualitySettings_cpp"] = (function() {
  19694. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19695. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19696. return real___GLOBAL__sub_I_QualitySettings_cpp.apply(null, arguments);
  19697. });
  19698. var real___GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp = asm["__GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp"];
  19699. asm["__GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp"] = (function() {
  19700. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19701. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19702. return real___GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp.apply(null, arguments);
  19703. });
  19704. var real___GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp = asm["__GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp"];
  19705. asm["__GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp"] = (function() {
  19706. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19707. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19708. return real___GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp.apply(null, arguments);
  19709. });
  19710. var real___GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp = asm["__GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp"];
  19711. asm["__GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp"] = (function() {
  19712. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19713. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19714. return real___GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp.apply(null, arguments);
  19715. });
  19716. var real___GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp = asm["__GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp"];
  19717. asm["__GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp"] = (function() {
  19718. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19719. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19720. return real___GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp.apply(null, arguments);
  19721. });
  19722. var real___GLOBAL__sub_I_Runtime_Allocator_0_cpp = asm["__GLOBAL__sub_I_Runtime_Allocator_0_cpp"];
  19723. asm["__GLOBAL__sub_I_Runtime_Allocator_0_cpp"] = (function() {
  19724. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19725. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19726. return real___GLOBAL__sub_I_Runtime_Allocator_0_cpp.apply(null, arguments);
  19727. });
  19728. var real___GLOBAL__sub_I_Runtime_Allocator_2_cpp = asm["__GLOBAL__sub_I_Runtime_Allocator_2_cpp"];
  19729. asm["__GLOBAL__sub_I_Runtime_Allocator_2_cpp"] = (function() {
  19730. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19731. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19732. return real___GLOBAL__sub_I_Runtime_Allocator_2_cpp.apply(null, arguments);
  19733. });
  19734. var real___GLOBAL__sub_I_Runtime_Allocator_3_cpp = asm["__GLOBAL__sub_I_Runtime_Allocator_3_cpp"];
  19735. asm["__GLOBAL__sub_I_Runtime_Allocator_3_cpp"] = (function() {
  19736. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19737. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19738. return real___GLOBAL__sub_I_Runtime_Allocator_3_cpp.apply(null, arguments);
  19739. });
  19740. var real___GLOBAL__sub_I_Runtime_Application_0_cpp = asm["__GLOBAL__sub_I_Runtime_Application_0_cpp"];
  19741. asm["__GLOBAL__sub_I_Runtime_Application_0_cpp"] = (function() {
  19742. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19743. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19744. return real___GLOBAL__sub_I_Runtime_Application_0_cpp.apply(null, arguments);
  19745. });
  19746. var real___GLOBAL__sub_I_Runtime_BaseClasses_0_cpp = asm["__GLOBAL__sub_I_Runtime_BaseClasses_0_cpp"];
  19747. asm["__GLOBAL__sub_I_Runtime_BaseClasses_0_cpp"] = (function() {
  19748. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19749. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19750. return real___GLOBAL__sub_I_Runtime_BaseClasses_0_cpp.apply(null, arguments);
  19751. });
  19752. var real___GLOBAL__sub_I_Runtime_BaseClasses_1_cpp = asm["__GLOBAL__sub_I_Runtime_BaseClasses_1_cpp"];
  19753. asm["__GLOBAL__sub_I_Runtime_BaseClasses_1_cpp"] = (function() {
  19754. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19755. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19756. return real___GLOBAL__sub_I_Runtime_BaseClasses_1_cpp.apply(null, arguments);
  19757. });
  19758. var real___GLOBAL__sub_I_Runtime_BaseClasses_2_cpp = asm["__GLOBAL__sub_I_Runtime_BaseClasses_2_cpp"];
  19759. asm["__GLOBAL__sub_I_Runtime_BaseClasses_2_cpp"] = (function() {
  19760. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19761. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19762. return real___GLOBAL__sub_I_Runtime_BaseClasses_2_cpp.apply(null, arguments);
  19763. });
  19764. var real___GLOBAL__sub_I_Runtime_BaseClasses_3_cpp = asm["__GLOBAL__sub_I_Runtime_BaseClasses_3_cpp"];
  19765. asm["__GLOBAL__sub_I_Runtime_BaseClasses_3_cpp"] = (function() {
  19766. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19767. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19768. return real___GLOBAL__sub_I_Runtime_BaseClasses_3_cpp.apply(null, arguments);
  19769. });
  19770. var real___GLOBAL__sub_I_Runtime_Burst_0_cpp = asm["__GLOBAL__sub_I_Runtime_Burst_0_cpp"];
  19771. asm["__GLOBAL__sub_I_Runtime_Burst_0_cpp"] = (function() {
  19772. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19773. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19774. return real___GLOBAL__sub_I_Runtime_Burst_0_cpp.apply(null, arguments);
  19775. });
  19776. var real___GLOBAL__sub_I_Runtime_Camera_0_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_0_cpp"];
  19777. asm["__GLOBAL__sub_I_Runtime_Camera_0_cpp"] = (function() {
  19778. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19779. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19780. return real___GLOBAL__sub_I_Runtime_Camera_0_cpp.apply(null, arguments);
  19781. });
  19782. var real___GLOBAL__sub_I_Runtime_Camera_1_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_1_cpp"];
  19783. asm["__GLOBAL__sub_I_Runtime_Camera_1_cpp"] = (function() {
  19784. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19785. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19786. return real___GLOBAL__sub_I_Runtime_Camera_1_cpp.apply(null, arguments);
  19787. });
  19788. var real___GLOBAL__sub_I_Runtime_Camera_2_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_2_cpp"];
  19789. asm["__GLOBAL__sub_I_Runtime_Camera_2_cpp"] = (function() {
  19790. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19791. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19792. return real___GLOBAL__sub_I_Runtime_Camera_2_cpp.apply(null, arguments);
  19793. });
  19794. var real___GLOBAL__sub_I_Runtime_Camera_3_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_3_cpp"];
  19795. asm["__GLOBAL__sub_I_Runtime_Camera_3_cpp"] = (function() {
  19796. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19797. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19798. return real___GLOBAL__sub_I_Runtime_Camera_3_cpp.apply(null, arguments);
  19799. });
  19800. var real___GLOBAL__sub_I_Runtime_Camera_4_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_4_cpp"];
  19801. asm["__GLOBAL__sub_I_Runtime_Camera_4_cpp"] = (function() {
  19802. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19803. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19804. return real___GLOBAL__sub_I_Runtime_Camera_4_cpp.apply(null, arguments);
  19805. });
  19806. var real___GLOBAL__sub_I_Runtime_Camera_5_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_5_cpp"];
  19807. asm["__GLOBAL__sub_I_Runtime_Camera_5_cpp"] = (function() {
  19808. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19809. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19810. return real___GLOBAL__sub_I_Runtime_Camera_5_cpp.apply(null, arguments);
  19811. });
  19812. var real___GLOBAL__sub_I_Runtime_Camera_6_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_6_cpp"];
  19813. asm["__GLOBAL__sub_I_Runtime_Camera_6_cpp"] = (function() {
  19814. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19815. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19816. return real___GLOBAL__sub_I_Runtime_Camera_6_cpp.apply(null, arguments);
  19817. });
  19818. var real___GLOBAL__sub_I_Runtime_Camera_7_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_7_cpp"];
  19819. asm["__GLOBAL__sub_I_Runtime_Camera_7_cpp"] = (function() {
  19820. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19821. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19822. return real___GLOBAL__sub_I_Runtime_Camera_7_cpp.apply(null, arguments);
  19823. });
  19824. var real___GLOBAL__sub_I_Runtime_Camera_8_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_8_cpp"];
  19825. asm["__GLOBAL__sub_I_Runtime_Camera_8_cpp"] = (function() {
  19826. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19827. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19828. return real___GLOBAL__sub_I_Runtime_Camera_8_cpp.apply(null, arguments);
  19829. });
  19830. var real___GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp"];
  19831. asm["__GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp"] = (function() {
  19832. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19833. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19834. return real___GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp.apply(null, arguments);
  19835. });
  19836. var real___GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp"];
  19837. asm["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp"] = (function() {
  19838. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19839. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19840. return real___GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp.apply(null, arguments);
  19841. });
  19842. var real___GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp"];
  19843. asm["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp"] = (function() {
  19844. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19845. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19846. return real___GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp.apply(null, arguments);
  19847. });
  19848. var real___GLOBAL__sub_I_Runtime_Containers_0_cpp = asm["__GLOBAL__sub_I_Runtime_Containers_0_cpp"];
  19849. asm["__GLOBAL__sub_I_Runtime_Containers_0_cpp"] = (function() {
  19850. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19851. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19852. return real___GLOBAL__sub_I_Runtime_Containers_0_cpp.apply(null, arguments);
  19853. });
  19854. var real___GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp = asm["__GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp"];
  19855. asm["__GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp"] = (function() {
  19856. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19857. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19858. return real___GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp.apply(null, arguments);
  19859. });
  19860. var real___GLOBAL__sub_I_Runtime_Director_Core_0_cpp = asm["__GLOBAL__sub_I_Runtime_Director_Core_0_cpp"];
  19861. asm["__GLOBAL__sub_I_Runtime_Director_Core_0_cpp"] = (function() {
  19862. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19863. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19864. return real___GLOBAL__sub_I_Runtime_Director_Core_0_cpp.apply(null, arguments);
  19865. });
  19866. var real___GLOBAL__sub_I_Runtime_Director_Core_1_cpp = asm["__GLOBAL__sub_I_Runtime_Director_Core_1_cpp"];
  19867. asm["__GLOBAL__sub_I_Runtime_Director_Core_1_cpp"] = (function() {
  19868. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19869. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19870. return real___GLOBAL__sub_I_Runtime_Director_Core_1_cpp.apply(null, arguments);
  19871. });
  19872. var real___GLOBAL__sub_I_Runtime_Export_Unsafe_0_cpp = asm["__GLOBAL__sub_I_Runtime_Export_Unsafe_0_cpp"];
  19873. asm["__GLOBAL__sub_I_Runtime_Export_Unsafe_0_cpp"] = (function() {
  19874. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19875. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19876. return real___GLOBAL__sub_I_Runtime_Export_Unsafe_0_cpp.apply(null, arguments);
  19877. });
  19878. var real___GLOBAL__sub_I_Runtime_File_0_cpp = asm["__GLOBAL__sub_I_Runtime_File_0_cpp"];
  19879. asm["__GLOBAL__sub_I_Runtime_File_0_cpp"] = (function() {
  19880. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19881. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19882. return real___GLOBAL__sub_I_Runtime_File_0_cpp.apply(null, arguments);
  19883. });
  19884. var real___GLOBAL__sub_I_Runtime_GameCode_0_cpp = asm["__GLOBAL__sub_I_Runtime_GameCode_0_cpp"];
  19885. asm["__GLOBAL__sub_I_Runtime_GameCode_0_cpp"] = (function() {
  19886. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19887. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19888. return real___GLOBAL__sub_I_Runtime_GameCode_0_cpp.apply(null, arguments);
  19889. });
  19890. var real___GLOBAL__sub_I_Runtime_Geometry_1_cpp = asm["__GLOBAL__sub_I_Runtime_Geometry_1_cpp"];
  19891. asm["__GLOBAL__sub_I_Runtime_Geometry_1_cpp"] = (function() {
  19892. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19893. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19894. return real___GLOBAL__sub_I_Runtime_Geometry_1_cpp.apply(null, arguments);
  19895. });
  19896. var real___GLOBAL__sub_I_Runtime_Geometry_2_cpp = asm["__GLOBAL__sub_I_Runtime_Geometry_2_cpp"];
  19897. asm["__GLOBAL__sub_I_Runtime_Geometry_2_cpp"] = (function() {
  19898. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19899. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19900. return real___GLOBAL__sub_I_Runtime_Geometry_2_cpp.apply(null, arguments);
  19901. });
  19902. var real___GLOBAL__sub_I_Runtime_GfxDevice_1_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_1_cpp"];
  19903. asm["__GLOBAL__sub_I_Runtime_GfxDevice_1_cpp"] = (function() {
  19904. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19905. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19906. return real___GLOBAL__sub_I_Runtime_GfxDevice_1_cpp.apply(null, arguments);
  19907. });
  19908. var real___GLOBAL__sub_I_Runtime_GfxDevice_2_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_2_cpp"];
  19909. asm["__GLOBAL__sub_I_Runtime_GfxDevice_2_cpp"] = (function() {
  19910. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19911. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19912. return real___GLOBAL__sub_I_Runtime_GfxDevice_2_cpp.apply(null, arguments);
  19913. });
  19914. var real___GLOBAL__sub_I_Runtime_GfxDevice_3_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_3_cpp"];
  19915. asm["__GLOBAL__sub_I_Runtime_GfxDevice_3_cpp"] = (function() {
  19916. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19917. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19918. return real___GLOBAL__sub_I_Runtime_GfxDevice_3_cpp.apply(null, arguments);
  19919. });
  19920. var real___GLOBAL__sub_I_Runtime_GfxDevice_4_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_4_cpp"];
  19921. asm["__GLOBAL__sub_I_Runtime_GfxDevice_4_cpp"] = (function() {
  19922. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19923. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19924. return real___GLOBAL__sub_I_Runtime_GfxDevice_4_cpp.apply(null, arguments);
  19925. });
  19926. var real___GLOBAL__sub_I_Runtime_GfxDevice_5_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_5_cpp"];
  19927. asm["__GLOBAL__sub_I_Runtime_GfxDevice_5_cpp"] = (function() {
  19928. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19929. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19930. return real___GLOBAL__sub_I_Runtime_GfxDevice_5_cpp.apply(null, arguments);
  19931. });
  19932. var real___GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp"];
  19933. asm["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp"] = (function() {
  19934. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19935. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19936. return real___GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp.apply(null, arguments);
  19937. });
  19938. var real___GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp"];
  19939. asm["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp"] = (function() {
  19940. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19941. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19942. return real___GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp.apply(null, arguments);
  19943. });
  19944. var real___GLOBAL__sub_I_Runtime_Graphics_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_0_cpp"];
  19945. asm["__GLOBAL__sub_I_Runtime_Graphics_0_cpp"] = (function() {
  19946. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19947. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19948. return real___GLOBAL__sub_I_Runtime_Graphics_0_cpp.apply(null, arguments);
  19949. });
  19950. var real___GLOBAL__sub_I_Runtime_Graphics_10_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_10_cpp"];
  19951. asm["__GLOBAL__sub_I_Runtime_Graphics_10_cpp"] = (function() {
  19952. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19953. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19954. return real___GLOBAL__sub_I_Runtime_Graphics_10_cpp.apply(null, arguments);
  19955. });
  19956. var real___GLOBAL__sub_I_Runtime_Graphics_11_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_11_cpp"];
  19957. asm["__GLOBAL__sub_I_Runtime_Graphics_11_cpp"] = (function() {
  19958. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19959. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19960. return real___GLOBAL__sub_I_Runtime_Graphics_11_cpp.apply(null, arguments);
  19961. });
  19962. var real___GLOBAL__sub_I_Runtime_Graphics_12_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_12_cpp"];
  19963. asm["__GLOBAL__sub_I_Runtime_Graphics_12_cpp"] = (function() {
  19964. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19965. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19966. return real___GLOBAL__sub_I_Runtime_Graphics_12_cpp.apply(null, arguments);
  19967. });
  19968. var real___GLOBAL__sub_I_Runtime_Graphics_1_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_1_cpp"];
  19969. asm["__GLOBAL__sub_I_Runtime_Graphics_1_cpp"] = (function() {
  19970. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19971. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19972. return real___GLOBAL__sub_I_Runtime_Graphics_1_cpp.apply(null, arguments);
  19973. });
  19974. var real___GLOBAL__sub_I_Runtime_Graphics_2_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_2_cpp"];
  19975. asm["__GLOBAL__sub_I_Runtime_Graphics_2_cpp"] = (function() {
  19976. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19977. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19978. return real___GLOBAL__sub_I_Runtime_Graphics_2_cpp.apply(null, arguments);
  19979. });
  19980. var real___GLOBAL__sub_I_Runtime_Graphics_4_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_4_cpp"];
  19981. asm["__GLOBAL__sub_I_Runtime_Graphics_4_cpp"] = (function() {
  19982. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19983. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19984. return real___GLOBAL__sub_I_Runtime_Graphics_4_cpp.apply(null, arguments);
  19985. });
  19986. var real___GLOBAL__sub_I_Runtime_Graphics_5_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_5_cpp"];
  19987. asm["__GLOBAL__sub_I_Runtime_Graphics_5_cpp"] = (function() {
  19988. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19989. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19990. return real___GLOBAL__sub_I_Runtime_Graphics_5_cpp.apply(null, arguments);
  19991. });
  19992. var real___GLOBAL__sub_I_Runtime_Graphics_6_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_6_cpp"];
  19993. asm["__GLOBAL__sub_I_Runtime_Graphics_6_cpp"] = (function() {
  19994. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  19995. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  19996. return real___GLOBAL__sub_I_Runtime_Graphics_6_cpp.apply(null, arguments);
  19997. });
  19998. var real___GLOBAL__sub_I_Runtime_Graphics_8_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_8_cpp"];
  19999. asm["__GLOBAL__sub_I_Runtime_Graphics_8_cpp"] = (function() {
  20000. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20001. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20002. return real___GLOBAL__sub_I_Runtime_Graphics_8_cpp.apply(null, arguments);
  20003. });
  20004. var real___GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp"];
  20005. asm["__GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp"] = (function() {
  20006. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20007. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20008. return real___GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp.apply(null, arguments);
  20009. });
  20010. var real___GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp"];
  20011. asm["__GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp"] = (function() {
  20012. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20013. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20014. return real___GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp.apply(null, arguments);
  20015. });
  20016. var real___GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp"];
  20017. asm["__GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp"] = (function() {
  20018. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20019. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20020. return real___GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp.apply(null, arguments);
  20021. });
  20022. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp"];
  20023. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp"] = (function() {
  20024. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20025. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20026. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp.apply(null, arguments);
  20027. });
  20028. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp"];
  20029. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp"] = (function() {
  20030. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20031. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20032. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp.apply(null, arguments);
  20033. });
  20034. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp"];
  20035. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp"] = (function() {
  20036. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20037. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20038. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp.apply(null, arguments);
  20039. });
  20040. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp"];
  20041. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp"] = (function() {
  20042. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20043. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20044. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp.apply(null, arguments);
  20045. });
  20046. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp"];
  20047. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp"] = (function() {
  20048. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20049. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20050. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp.apply(null, arguments);
  20051. });
  20052. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp"];
  20053. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp"] = (function() {
  20054. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20055. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20056. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp.apply(null, arguments);
  20057. });
  20058. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp"];
  20059. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp"] = (function() {
  20060. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20061. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20062. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp.apply(null, arguments);
  20063. });
  20064. var real___GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp"];
  20065. asm["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp"] = (function() {
  20066. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20067. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20068. return real___GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp.apply(null, arguments);
  20069. });
  20070. var real___GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp"];
  20071. asm["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp"] = (function() {
  20072. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20073. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20074. return real___GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp.apply(null, arguments);
  20075. });
  20076. var real___GLOBAL__sub_I_Runtime_Input_0_cpp = asm["__GLOBAL__sub_I_Runtime_Input_0_cpp"];
  20077. asm["__GLOBAL__sub_I_Runtime_Input_0_cpp"] = (function() {
  20078. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20079. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20080. return real___GLOBAL__sub_I_Runtime_Input_0_cpp.apply(null, arguments);
  20081. });
  20082. var real___GLOBAL__sub_I_Runtime_Interfaces_0_cpp = asm["__GLOBAL__sub_I_Runtime_Interfaces_0_cpp"];
  20083. asm["__GLOBAL__sub_I_Runtime_Interfaces_0_cpp"] = (function() {
  20084. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20085. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20086. return real___GLOBAL__sub_I_Runtime_Interfaces_0_cpp.apply(null, arguments);
  20087. });
  20088. var real___GLOBAL__sub_I_Runtime_Interfaces_1_cpp = asm["__GLOBAL__sub_I_Runtime_Interfaces_1_cpp"];
  20089. asm["__GLOBAL__sub_I_Runtime_Interfaces_1_cpp"] = (function() {
  20090. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20091. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20092. return real___GLOBAL__sub_I_Runtime_Interfaces_1_cpp.apply(null, arguments);
  20093. });
  20094. var real___GLOBAL__sub_I_Runtime_Interfaces_3_cpp = asm["__GLOBAL__sub_I_Runtime_Interfaces_3_cpp"];
  20095. asm["__GLOBAL__sub_I_Runtime_Interfaces_3_cpp"] = (function() {
  20096. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20097. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20098. return real___GLOBAL__sub_I_Runtime_Interfaces_3_cpp.apply(null, arguments);
  20099. });
  20100. var real___GLOBAL__sub_I_Runtime_Jobs_0_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_0_cpp"];
  20101. asm["__GLOBAL__sub_I_Runtime_Jobs_0_cpp"] = (function() {
  20102. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20103. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20104. return real___GLOBAL__sub_I_Runtime_Jobs_0_cpp.apply(null, arguments);
  20105. });
  20106. var real___GLOBAL__sub_I_Runtime_Jobs_1_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_1_cpp"];
  20107. asm["__GLOBAL__sub_I_Runtime_Jobs_1_cpp"] = (function() {
  20108. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20109. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20110. return real___GLOBAL__sub_I_Runtime_Jobs_1_cpp.apply(null, arguments);
  20111. });
  20112. var real___GLOBAL__sub_I_Runtime_Jobs_2_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_2_cpp"];
  20113. asm["__GLOBAL__sub_I_Runtime_Jobs_2_cpp"] = (function() {
  20114. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20115. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20116. return real___GLOBAL__sub_I_Runtime_Jobs_2_cpp.apply(null, arguments);
  20117. });
  20118. var real___GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp"];
  20119. asm["__GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp"] = (function() {
  20120. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20121. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20122. return real___GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp.apply(null, arguments);
  20123. });
  20124. var real___GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp"];
  20125. asm["__GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp"] = (function() {
  20126. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20127. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20128. return real___GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp.apply(null, arguments);
  20129. });
  20130. var real___GLOBAL__sub_I_Runtime_Math_2_cpp = asm["__GLOBAL__sub_I_Runtime_Math_2_cpp"];
  20131. asm["__GLOBAL__sub_I_Runtime_Math_2_cpp"] = (function() {
  20132. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20133. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20134. return real___GLOBAL__sub_I_Runtime_Math_2_cpp.apply(null, arguments);
  20135. });
  20136. var real___GLOBAL__sub_I_Runtime_Math_Random_0_cpp = asm["__GLOBAL__sub_I_Runtime_Math_Random_0_cpp"];
  20137. asm["__GLOBAL__sub_I_Runtime_Math_Random_0_cpp"] = (function() {
  20138. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20139. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20140. return real___GLOBAL__sub_I_Runtime_Math_Random_0_cpp.apply(null, arguments);
  20141. });
  20142. var real___GLOBAL__sub_I_Runtime_Misc_0_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_0_cpp"];
  20143. asm["__GLOBAL__sub_I_Runtime_Misc_0_cpp"] = (function() {
  20144. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20145. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20146. return real___GLOBAL__sub_I_Runtime_Misc_0_cpp.apply(null, arguments);
  20147. });
  20148. var real___GLOBAL__sub_I_Runtime_Misc_1_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_1_cpp"];
  20149. asm["__GLOBAL__sub_I_Runtime_Misc_1_cpp"] = (function() {
  20150. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20151. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20152. return real___GLOBAL__sub_I_Runtime_Misc_1_cpp.apply(null, arguments);
  20153. });
  20154. var real___GLOBAL__sub_I_Runtime_Misc_2_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_2_cpp"];
  20155. asm["__GLOBAL__sub_I_Runtime_Misc_2_cpp"] = (function() {
  20156. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20157. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20158. return real___GLOBAL__sub_I_Runtime_Misc_2_cpp.apply(null, arguments);
  20159. });
  20160. var real___GLOBAL__sub_I_Runtime_Misc_3_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_3_cpp"];
  20161. asm["__GLOBAL__sub_I_Runtime_Misc_3_cpp"] = (function() {
  20162. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20163. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20164. return real___GLOBAL__sub_I_Runtime_Misc_3_cpp.apply(null, arguments);
  20165. });
  20166. var real___GLOBAL__sub_I_Runtime_Misc_4_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_4_cpp"];
  20167. asm["__GLOBAL__sub_I_Runtime_Misc_4_cpp"] = (function() {
  20168. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20169. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20170. return real___GLOBAL__sub_I_Runtime_Misc_4_cpp.apply(null, arguments);
  20171. });
  20172. var real___GLOBAL__sub_I_Runtime_Misc_5_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_5_cpp"];
  20173. asm["__GLOBAL__sub_I_Runtime_Misc_5_cpp"] = (function() {
  20174. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20175. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20176. return real___GLOBAL__sub_I_Runtime_Misc_5_cpp.apply(null, arguments);
  20177. });
  20178. var real___GLOBAL__sub_I_Runtime_Modules_0_cpp = asm["__GLOBAL__sub_I_Runtime_Modules_0_cpp"];
  20179. asm["__GLOBAL__sub_I_Runtime_Modules_0_cpp"] = (function() {
  20180. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20181. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20182. return real___GLOBAL__sub_I_Runtime_Modules_0_cpp.apply(null, arguments);
  20183. });
  20184. var real___GLOBAL__sub_I_Runtime_Mono_0_cpp = asm["__GLOBAL__sub_I_Runtime_Mono_0_cpp"];
  20185. asm["__GLOBAL__sub_I_Runtime_Mono_0_cpp"] = (function() {
  20186. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20187. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20188. return real___GLOBAL__sub_I_Runtime_Mono_0_cpp.apply(null, arguments);
  20189. });
  20190. var real___GLOBAL__sub_I_Runtime_Mono_2_cpp = asm["__GLOBAL__sub_I_Runtime_Mono_2_cpp"];
  20191. asm["__GLOBAL__sub_I_Runtime_Mono_2_cpp"] = (function() {
  20192. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20193. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20194. return real___GLOBAL__sub_I_Runtime_Mono_2_cpp.apply(null, arguments);
  20195. });
  20196. var real___GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp = asm["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp"];
  20197. asm["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp"] = (function() {
  20198. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20199. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20200. return real___GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp.apply(null, arguments);
  20201. });
  20202. var real___GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp = asm["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp"];
  20203. asm["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp"] = (function() {
  20204. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20205. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20206. return real___GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp.apply(null, arguments);
  20207. });
  20208. var real___GLOBAL__sub_I_Runtime_Network_0_cpp = asm["__GLOBAL__sub_I_Runtime_Network_0_cpp"];
  20209. asm["__GLOBAL__sub_I_Runtime_Network_0_cpp"] = (function() {
  20210. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20211. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20212. return real___GLOBAL__sub_I_Runtime_Network_0_cpp.apply(null, arguments);
  20213. });
  20214. var real___GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp = asm["__GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp"];
  20215. asm["__GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp"] = (function() {
  20216. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20217. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20218. return real___GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp.apply(null, arguments);
  20219. });
  20220. var real___GLOBAL__sub_I_Runtime_PluginInterface_0_cpp = asm["__GLOBAL__sub_I_Runtime_PluginInterface_0_cpp"];
  20221. asm["__GLOBAL__sub_I_Runtime_PluginInterface_0_cpp"] = (function() {
  20222. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20223. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20224. return real___GLOBAL__sub_I_Runtime_PluginInterface_0_cpp.apply(null, arguments);
  20225. });
  20226. var real___GLOBAL__sub_I_Runtime_PreloadManager_0_cpp = asm["__GLOBAL__sub_I_Runtime_PreloadManager_0_cpp"];
  20227. asm["__GLOBAL__sub_I_Runtime_PreloadManager_0_cpp"] = (function() {
  20228. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20229. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20230. return real___GLOBAL__sub_I_Runtime_PreloadManager_0_cpp.apply(null, arguments);
  20231. });
  20232. var real___GLOBAL__sub_I_Runtime_Profiler_0_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_0_cpp"];
  20233. asm["__GLOBAL__sub_I_Runtime_Profiler_0_cpp"] = (function() {
  20234. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20235. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20236. return real___GLOBAL__sub_I_Runtime_Profiler_0_cpp.apply(null, arguments);
  20237. });
  20238. var real___GLOBAL__sub_I_Runtime_Profiler_1_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_1_cpp"];
  20239. asm["__GLOBAL__sub_I_Runtime_Profiler_1_cpp"] = (function() {
  20240. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20241. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20242. return real___GLOBAL__sub_I_Runtime_Profiler_1_cpp.apply(null, arguments);
  20243. });
  20244. var real___GLOBAL__sub_I_Runtime_Profiler_2_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_2_cpp"];
  20245. asm["__GLOBAL__sub_I_Runtime_Profiler_2_cpp"] = (function() {
  20246. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20247. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20248. return real___GLOBAL__sub_I_Runtime_Profiler_2_cpp.apply(null, arguments);
  20249. });
  20250. var real___GLOBAL__sub_I_Runtime_Profiler_ExternalGPUProfiler_0_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_ExternalGPUProfiler_0_cpp"];
  20251. asm["__GLOBAL__sub_I_Runtime_Profiler_ExternalGPUProfiler_0_cpp"] = (function() {
  20252. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20253. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20254. return real___GLOBAL__sub_I_Runtime_Profiler_ExternalGPUProfiler_0_cpp.apply(null, arguments);
  20255. });
  20256. var real___GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp"];
  20257. asm["__GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp"] = (function() {
  20258. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20259. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20260. return real___GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp.apply(null, arguments);
  20261. });
  20262. var real___GLOBAL__sub_I_Runtime_SceneManager_0_cpp = asm["__GLOBAL__sub_I_Runtime_SceneManager_0_cpp"];
  20263. asm["__GLOBAL__sub_I_Runtime_SceneManager_0_cpp"] = (function() {
  20264. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20265. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20266. return real___GLOBAL__sub_I_Runtime_SceneManager_0_cpp.apply(null, arguments);
  20267. });
  20268. var real___GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp = asm["__GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp"];
  20269. asm["__GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp"] = (function() {
  20270. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20271. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20272. return real___GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp.apply(null, arguments);
  20273. });
  20274. var real___GLOBAL__sub_I_Runtime_Scripting_0_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_0_cpp"];
  20275. asm["__GLOBAL__sub_I_Runtime_Scripting_0_cpp"] = (function() {
  20276. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20277. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20278. return real___GLOBAL__sub_I_Runtime_Scripting_0_cpp.apply(null, arguments);
  20279. });
  20280. var real___GLOBAL__sub_I_Runtime_Scripting_2_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_2_cpp"];
  20281. asm["__GLOBAL__sub_I_Runtime_Scripting_2_cpp"] = (function() {
  20282. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20283. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20284. return real___GLOBAL__sub_I_Runtime_Scripting_2_cpp.apply(null, arguments);
  20285. });
  20286. var real___GLOBAL__sub_I_Runtime_Scripting_3_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_3_cpp"];
  20287. asm["__GLOBAL__sub_I_Runtime_Scripting_3_cpp"] = (function() {
  20288. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20289. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20290. return real___GLOBAL__sub_I_Runtime_Scripting_3_cpp.apply(null, arguments);
  20291. });
  20292. var real___GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp"];
  20293. asm["__GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp"] = (function() {
  20294. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20295. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20296. return real___GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp.apply(null, arguments);
  20297. });
  20298. var real___GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp"];
  20299. asm["__GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp"] = (function() {
  20300. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20301. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20302. return real___GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp.apply(null, arguments);
  20303. });
  20304. var real___GLOBAL__sub_I_Runtime_Serialize_0_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_0_cpp"];
  20305. asm["__GLOBAL__sub_I_Runtime_Serialize_0_cpp"] = (function() {
  20306. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20307. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20308. return real___GLOBAL__sub_I_Runtime_Serialize_0_cpp.apply(null, arguments);
  20309. });
  20310. var real___GLOBAL__sub_I_Runtime_Serialize_1_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_1_cpp"];
  20311. asm["__GLOBAL__sub_I_Runtime_Serialize_1_cpp"] = (function() {
  20312. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20313. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20314. return real___GLOBAL__sub_I_Runtime_Serialize_1_cpp.apply(null, arguments);
  20315. });
  20316. var real___GLOBAL__sub_I_Runtime_Serialize_2_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_2_cpp"];
  20317. asm["__GLOBAL__sub_I_Runtime_Serialize_2_cpp"] = (function() {
  20318. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20319. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20320. return real___GLOBAL__sub_I_Runtime_Serialize_2_cpp.apply(null, arguments);
  20321. });
  20322. var real___GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp"];
  20323. asm["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp"] = (function() {
  20324. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20325. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20326. return real___GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp.apply(null, arguments);
  20327. });
  20328. var real___GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp"];
  20329. asm["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp"] = (function() {
  20330. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20331. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20332. return real___GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp.apply(null, arguments);
  20333. });
  20334. var real___GLOBAL__sub_I_Runtime_Shaders_0_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_0_cpp"];
  20335. asm["__GLOBAL__sub_I_Runtime_Shaders_0_cpp"] = (function() {
  20336. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20337. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20338. return real___GLOBAL__sub_I_Runtime_Shaders_0_cpp.apply(null, arguments);
  20339. });
  20340. var real___GLOBAL__sub_I_Runtime_Shaders_1_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_1_cpp"];
  20341. asm["__GLOBAL__sub_I_Runtime_Shaders_1_cpp"] = (function() {
  20342. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20343. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20344. return real___GLOBAL__sub_I_Runtime_Shaders_1_cpp.apply(null, arguments);
  20345. });
  20346. var real___GLOBAL__sub_I_Runtime_Shaders_4_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_4_cpp"];
  20347. asm["__GLOBAL__sub_I_Runtime_Shaders_4_cpp"] = (function() {
  20348. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20349. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20350. return real___GLOBAL__sub_I_Runtime_Shaders_4_cpp.apply(null, arguments);
  20351. });
  20352. var real___GLOBAL__sub_I_Runtime_Shaders_5_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_5_cpp"];
  20353. asm["__GLOBAL__sub_I_Runtime_Shaders_5_cpp"] = (function() {
  20354. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20355. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20356. return real___GLOBAL__sub_I_Runtime_Shaders_5_cpp.apply(null, arguments);
  20357. });
  20358. var real___GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp"];
  20359. asm["__GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp"] = (function() {
  20360. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20361. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20362. return real___GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp.apply(null, arguments);
  20363. });
  20364. var real___GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp"];
  20365. asm["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp"] = (function() {
  20366. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20367. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20368. return real___GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp.apply(null, arguments);
  20369. });
  20370. var real___GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp"];
  20371. asm["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp"] = (function() {
  20372. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20373. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20374. return real___GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp.apply(null, arguments);
  20375. });
  20376. var real___GLOBAL__sub_I_Runtime_Streaming_0_cpp = asm["__GLOBAL__sub_I_Runtime_Streaming_0_cpp"];
  20377. asm["__GLOBAL__sub_I_Runtime_Streaming_0_cpp"] = (function() {
  20378. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20379. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20380. return real___GLOBAL__sub_I_Runtime_Streaming_0_cpp.apply(null, arguments);
  20381. });
  20382. var real___GLOBAL__sub_I_Runtime_Streaming_1_cpp = asm["__GLOBAL__sub_I_Runtime_Streaming_1_cpp"];
  20383. asm["__GLOBAL__sub_I_Runtime_Streaming_1_cpp"] = (function() {
  20384. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20385. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20386. return real___GLOBAL__sub_I_Runtime_Streaming_1_cpp.apply(null, arguments);
  20387. });
  20388. var real___GLOBAL__sub_I_Runtime_Transform_0_cpp = asm["__GLOBAL__sub_I_Runtime_Transform_0_cpp"];
  20389. asm["__GLOBAL__sub_I_Runtime_Transform_0_cpp"] = (function() {
  20390. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20391. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20392. return real___GLOBAL__sub_I_Runtime_Transform_0_cpp.apply(null, arguments);
  20393. });
  20394. var real___GLOBAL__sub_I_Runtime_Transform_1_cpp = asm["__GLOBAL__sub_I_Runtime_Transform_1_cpp"];
  20395. asm["__GLOBAL__sub_I_Runtime_Transform_1_cpp"] = (function() {
  20396. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20397. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20398. return real___GLOBAL__sub_I_Runtime_Transform_1_cpp.apply(null, arguments);
  20399. });
  20400. var real___GLOBAL__sub_I_Runtime_Utilities_2_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_2_cpp"];
  20401. asm["__GLOBAL__sub_I_Runtime_Utilities_2_cpp"] = (function() {
  20402. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20403. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20404. return real___GLOBAL__sub_I_Runtime_Utilities_2_cpp.apply(null, arguments);
  20405. });
  20406. var real___GLOBAL__sub_I_Runtime_Utilities_5_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_5_cpp"];
  20407. asm["__GLOBAL__sub_I_Runtime_Utilities_5_cpp"] = (function() {
  20408. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20409. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20410. return real___GLOBAL__sub_I_Runtime_Utilities_5_cpp.apply(null, arguments);
  20411. });
  20412. var real___GLOBAL__sub_I_Runtime_Utilities_6_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_6_cpp"];
  20413. asm["__GLOBAL__sub_I_Runtime_Utilities_6_cpp"] = (function() {
  20414. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20415. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20416. return real___GLOBAL__sub_I_Runtime_Utilities_6_cpp.apply(null, arguments);
  20417. });
  20418. var real___GLOBAL__sub_I_Runtime_Utilities_7_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_7_cpp"];
  20419. asm["__GLOBAL__sub_I_Runtime_Utilities_7_cpp"] = (function() {
  20420. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20421. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20422. return real___GLOBAL__sub_I_Runtime_Utilities_7_cpp.apply(null, arguments);
  20423. });
  20424. var real___GLOBAL__sub_I_Runtime_Utilities_8_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_8_cpp"];
  20425. asm["__GLOBAL__sub_I_Runtime_Utilities_8_cpp"] = (function() {
  20426. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20427. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20428. return real___GLOBAL__sub_I_Runtime_Utilities_8_cpp.apply(null, arguments);
  20429. });
  20430. var real___GLOBAL__sub_I_Runtime_Utilities_9_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_9_cpp"];
  20431. asm["__GLOBAL__sub_I_Runtime_Utilities_9_cpp"] = (function() {
  20432. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20433. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20434. return real___GLOBAL__sub_I_Runtime_Utilities_9_cpp.apply(null, arguments);
  20435. });
  20436. var real___GLOBAL__sub_I_Runtime_Video_0_cpp = asm["__GLOBAL__sub_I_Runtime_Video_0_cpp"];
  20437. asm["__GLOBAL__sub_I_Runtime_Video_0_cpp"] = (function() {
  20438. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20439. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20440. return real___GLOBAL__sub_I_Runtime_Video_0_cpp.apply(null, arguments);
  20441. });
  20442. var real___GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp = asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp"];
  20443. asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp"] = (function() {
  20444. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20445. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20446. return real___GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp.apply(null, arguments);
  20447. });
  20448. var real___GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp = asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp"];
  20449. asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp"] = (function() {
  20450. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20451. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20452. return real___GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp.apply(null, arguments);
  20453. });
  20454. var real___GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp = asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp"];
  20455. asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp"] = (function() {
  20456. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20457. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20458. return real___GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp.apply(null, arguments);
  20459. });
  20460. var real___GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp = asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp"];
  20461. asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp"] = (function() {
  20462. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20463. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20464. return real___GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp.apply(null, arguments);
  20465. });
  20466. var real___GLOBAL__sub_I_Shader_cpp = asm["__GLOBAL__sub_I_Shader_cpp"];
  20467. asm["__GLOBAL__sub_I_Shader_cpp"] = (function() {
  20468. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20469. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20470. return real___GLOBAL__sub_I_Shader_cpp.apply(null, arguments);
  20471. });
  20472. var real___GLOBAL__sub_I_Shadows_cpp = asm["__GLOBAL__sub_I_Shadows_cpp"];
  20473. asm["__GLOBAL__sub_I_Shadows_cpp"] = (function() {
  20474. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20475. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20476. return real___GLOBAL__sub_I_Shadows_cpp.apply(null, arguments);
  20477. });
  20478. var real___GLOBAL__sub_I_ShapeModule_cpp = asm["__GLOBAL__sub_I_ShapeModule_cpp"];
  20479. asm["__GLOBAL__sub_I_ShapeModule_cpp"] = (function() {
  20480. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20481. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20482. return real___GLOBAL__sub_I_ShapeModule_cpp.apply(null, arguments);
  20483. });
  20484. var real___GLOBAL__sub_I_SpriteShapeBindings_gen_cpp = asm["__GLOBAL__sub_I_SpriteShapeBindings_gen_cpp"];
  20485. asm["__GLOBAL__sub_I_SpriteShapeBindings_gen_cpp"] = (function() {
  20486. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20487. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20488. return real___GLOBAL__sub_I_SpriteShapeBindings_gen_cpp.apply(null, arguments);
  20489. });
  20490. var real___GLOBAL__sub_I_SubsystemsScriptingClasses_cpp = asm["__GLOBAL__sub_I_SubsystemsScriptingClasses_cpp"];
  20491. asm["__GLOBAL__sub_I_SubsystemsScriptingClasses_cpp"] = (function() {
  20492. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20493. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20494. return real___GLOBAL__sub_I_SubsystemsScriptingClasses_cpp.apply(null, arguments);
  20495. });
  20496. var real___GLOBAL__sub_I_SwInterCollision_cpp = asm["__GLOBAL__sub_I_SwInterCollision_cpp"];
  20497. asm["__GLOBAL__sub_I_SwInterCollision_cpp"] = (function() {
  20498. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20499. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20500. return real___GLOBAL__sub_I_SwInterCollision_cpp.apply(null, arguments);
  20501. });
  20502. var real___GLOBAL__sub_I_SwSolverKernel_cpp = asm["__GLOBAL__sub_I_SwSolverKernel_cpp"];
  20503. asm["__GLOBAL__sub_I_SwSolverKernel_cpp"] = (function() {
  20504. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20505. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20506. return real___GLOBAL__sub_I_SwSolverKernel_cpp.apply(null, arguments);
  20507. });
  20508. var real___GLOBAL__sub_I_TLSModule_cpp = asm["__GLOBAL__sub_I_TLSModule_cpp"];
  20509. asm["__GLOBAL__sub_I_TLSModule_cpp"] = (function() {
  20510. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20511. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20512. return real___GLOBAL__sub_I_TLSModule_cpp.apply(null, arguments);
  20513. });
  20514. var real___GLOBAL__sub_I_TemplateInstantiations_cpp = asm["__GLOBAL__sub_I_TemplateInstantiations_cpp"];
  20515. asm["__GLOBAL__sub_I_TemplateInstantiations_cpp"] = (function() {
  20516. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20517. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20518. return real___GLOBAL__sub_I_TemplateInstantiations_cpp.apply(null, arguments);
  20519. });
  20520. var real___GLOBAL__sub_I_TerrainScriptingClasses_cpp = asm["__GLOBAL__sub_I_TerrainScriptingClasses_cpp"];
  20521. asm["__GLOBAL__sub_I_TerrainScriptingClasses_cpp"] = (function() {
  20522. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20523. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20524. return real___GLOBAL__sub_I_TerrainScriptingClasses_cpp.apply(null, arguments);
  20525. });
  20526. var real___GLOBAL__sub_I_TextCoreScriptingClasses_cpp = asm["__GLOBAL__sub_I_TextCoreScriptingClasses_cpp"];
  20527. asm["__GLOBAL__sub_I_TextCoreScriptingClasses_cpp"] = (function() {
  20528. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20529. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20530. return real___GLOBAL__sub_I_TextCoreScriptingClasses_cpp.apply(null, arguments);
  20531. });
  20532. var real___GLOBAL__sub_I_TextRenderingScriptingClasses_cpp = asm["__GLOBAL__sub_I_TextRenderingScriptingClasses_cpp"];
  20533. asm["__GLOBAL__sub_I_TextRenderingScriptingClasses_cpp"] = (function() {
  20534. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20535. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20536. return real___GLOBAL__sub_I_TextRenderingScriptingClasses_cpp.apply(null, arguments);
  20537. });
  20538. var real___GLOBAL__sub_I_TilemapScriptingClasses_cpp = asm["__GLOBAL__sub_I_TilemapScriptingClasses_cpp"];
  20539. asm["__GLOBAL__sub_I_TilemapScriptingClasses_cpp"] = (function() {
  20540. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20541. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20542. return real___GLOBAL__sub_I_TilemapScriptingClasses_cpp.apply(null, arguments);
  20543. });
  20544. var real___GLOBAL__sub_I_TrailRenderer_cpp = asm["__GLOBAL__sub_I_TrailRenderer_cpp"];
  20545. asm["__GLOBAL__sub_I_TrailRenderer_cpp"] = (function() {
  20546. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20547. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20548. return real___GLOBAL__sub_I_TrailRenderer_cpp.apply(null, arguments);
  20549. });
  20550. var real___GLOBAL__sub_I_UIElementsNativeScriptingClasses_cpp = asm["__GLOBAL__sub_I_UIElementsNativeScriptingClasses_cpp"];
  20551. asm["__GLOBAL__sub_I_UIElementsNativeScriptingClasses_cpp"] = (function() {
  20552. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20553. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20554. return real___GLOBAL__sub_I_UIElementsNativeScriptingClasses_cpp.apply(null, arguments);
  20555. });
  20556. var real___GLOBAL__sub_I_UIScriptingClasses_cpp = asm["__GLOBAL__sub_I_UIScriptingClasses_cpp"];
  20557. asm["__GLOBAL__sub_I_UIScriptingClasses_cpp"] = (function() {
  20558. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20559. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20560. return real___GLOBAL__sub_I_UIScriptingClasses_cpp.apply(null, arguments);
  20561. });
  20562. var real___GLOBAL__sub_I_UIWidgets_cpp = asm["__GLOBAL__sub_I_UIWidgets_cpp"];
  20563. asm["__GLOBAL__sub_I_UIWidgets_cpp"] = (function() {
  20564. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20565. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20566. return real___GLOBAL__sub_I_UIWidgets_cpp.apply(null, arguments);
  20567. });
  20568. var real___GLOBAL__sub_I_UVModule_cpp = asm["__GLOBAL__sub_I_UVModule_cpp"];
  20569. asm["__GLOBAL__sub_I_UVModule_cpp"] = (function() {
  20570. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20571. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20572. return real___GLOBAL__sub_I_UVModule_cpp.apply(null, arguments);
  20573. });
  20574. var real___GLOBAL__sub_I_UnityAdsSettings_cpp = asm["__GLOBAL__sub_I_UnityAdsSettings_cpp"];
  20575. asm["__GLOBAL__sub_I_UnityAdsSettings_cpp"] = (function() {
  20576. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20577. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20578. return real___GLOBAL__sub_I_UnityAdsSettings_cpp.apply(null, arguments);
  20579. });
  20580. var real___GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp = asm["__GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp"];
  20581. asm["__GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp"] = (function() {
  20582. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20583. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20584. return real___GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp.apply(null, arguments);
  20585. });
  20586. var real___GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp = asm["__GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp"];
  20587. asm["__GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp"] = (function() {
  20588. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20589. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20590. return real___GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp.apply(null, arguments);
  20591. });
  20592. var real___GLOBAL__sub_I_VFXScriptingClasses_cpp = asm["__GLOBAL__sub_I_VFXScriptingClasses_cpp"];
  20593. asm["__GLOBAL__sub_I_VFXScriptingClasses_cpp"] = (function() {
  20594. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20595. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20596. return real___GLOBAL__sub_I_VFXScriptingClasses_cpp.apply(null, arguments);
  20597. });
  20598. var real___GLOBAL__sub_I_VRScriptingClasses_cpp = asm["__GLOBAL__sub_I_VRScriptingClasses_cpp"];
  20599. asm["__GLOBAL__sub_I_VRScriptingClasses_cpp"] = (function() {
  20600. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20601. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20602. return real___GLOBAL__sub_I_VRScriptingClasses_cpp.apply(null, arguments);
  20603. });
  20604. var real___GLOBAL__sub_I_VelocityModule_cpp = asm["__GLOBAL__sub_I_VelocityModule_cpp"];
  20605. asm["__GLOBAL__sub_I_VelocityModule_cpp"] = (function() {
  20606. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20607. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20608. return real___GLOBAL__sub_I_VelocityModule_cpp.apply(null, arguments);
  20609. });
  20610. var real___GLOBAL__sub_I_VideoMediaOutput_cpp = asm["__GLOBAL__sub_I_VideoMediaOutput_cpp"];
  20611. asm["__GLOBAL__sub_I_VideoMediaOutput_cpp"] = (function() {
  20612. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20613. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20614. return real___GLOBAL__sub_I_VideoMediaOutput_cpp.apply(null, arguments);
  20615. });
  20616. var real___GLOBAL__sub_I_VideoScriptingClasses_cpp = asm["__GLOBAL__sub_I_VideoScriptingClasses_cpp"];
  20617. asm["__GLOBAL__sub_I_VideoScriptingClasses_cpp"] = (function() {
  20618. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20619. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20620. return real___GLOBAL__sub_I_VideoScriptingClasses_cpp.apply(null, arguments);
  20621. });
  20622. var real___GLOBAL__sub_I_VideoYUV420Convert_cpp = asm["__GLOBAL__sub_I_VideoYUV420Convert_cpp"];
  20623. asm["__GLOBAL__sub_I_VideoYUV420Convert_cpp"] = (function() {
  20624. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20625. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20626. return real___GLOBAL__sub_I_VideoYUV420Convert_cpp.apply(null, arguments);
  20627. });
  20628. var real___GLOBAL__sub_I_VisualEffectAsset_cpp = asm["__GLOBAL__sub_I_VisualEffectAsset_cpp"];
  20629. asm["__GLOBAL__sub_I_VisualEffectAsset_cpp"] = (function() {
  20630. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20631. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20632. return real___GLOBAL__sub_I_VisualEffectAsset_cpp.apply(null, arguments);
  20633. });
  20634. var real___GLOBAL__sub_I_Wind_cpp = asm["__GLOBAL__sub_I_Wind_cpp"];
  20635. asm["__GLOBAL__sub_I_Wind_cpp"] = (function() {
  20636. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20637. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20638. return real___GLOBAL__sub_I_Wind_cpp.apply(null, arguments);
  20639. });
  20640. var real___GLOBAL__sub_I_XRAudio_cpp = asm["__GLOBAL__sub_I_XRAudio_cpp"];
  20641. asm["__GLOBAL__sub_I_XRAudio_cpp"] = (function() {
  20642. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20643. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20644. return real___GLOBAL__sub_I_XRAudio_cpp.apply(null, arguments);
  20645. });
  20646. var real___GLOBAL__sub_I_XRPreInit_cpp = asm["__GLOBAL__sub_I_XRPreInit_cpp"];
  20647. asm["__GLOBAL__sub_I_XRPreInit_cpp"] = (function() {
  20648. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20649. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20650. return real___GLOBAL__sub_I_XRPreInit_cpp.apply(null, arguments);
  20651. });
  20652. var real___GLOBAL__sub_I_XRScriptingClasses_cpp = asm["__GLOBAL__sub_I_XRScriptingClasses_cpp"];
  20653. asm["__GLOBAL__sub_I_XRScriptingClasses_cpp"] = (function() {
  20654. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20655. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20656. return real___GLOBAL__sub_I_XRScriptingClasses_cpp.apply(null, arguments);
  20657. });
  20658. var real___GLOBAL__sub_I_XRWindowsLocatableCamera_cpp = asm["__GLOBAL__sub_I_XRWindowsLocatableCamera_cpp"];
  20659. asm["__GLOBAL__sub_I_XRWindowsLocatableCamera_cpp"] = (function() {
  20660. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20661. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20662. return real___GLOBAL__sub_I_XRWindowsLocatableCamera_cpp.apply(null, arguments);
  20663. });
  20664. var real___GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp = asm["__GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp"];
  20665. asm["__GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp"] = (function() {
  20666. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20667. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20668. return real___GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp.apply(null, arguments);
  20669. });
  20670. var real___GLOBAL__sub_I_clipmuscle_cpp = asm["__GLOBAL__sub_I_clipmuscle_cpp"];
  20671. asm["__GLOBAL__sub_I_clipmuscle_cpp"] = (function() {
  20672. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20673. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20674. return real___GLOBAL__sub_I_clipmuscle_cpp.apply(null, arguments);
  20675. });
  20676. var real___GLOBAL__sub_I_nvcloth_src_0_cpp = asm["__GLOBAL__sub_I_nvcloth_src_0_cpp"];
  20677. asm["__GLOBAL__sub_I_nvcloth_src_0_cpp"] = (function() {
  20678. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20679. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20680. return real___GLOBAL__sub_I_nvcloth_src_0_cpp.apply(null, arguments);
  20681. });
  20682. var real___GLOBAL__sub_I_nvcloth_src_1_cpp = asm["__GLOBAL__sub_I_nvcloth_src_1_cpp"];
  20683. asm["__GLOBAL__sub_I_nvcloth_src_1_cpp"] = (function() {
  20684. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20685. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20686. return real___GLOBAL__sub_I_nvcloth_src_1_cpp.apply(null, arguments);
  20687. });
  20688. var real___GLOBAL__sub_I_umbra_cpp = asm["__GLOBAL__sub_I_umbra_cpp"];
  20689. asm["__GLOBAL__sub_I_umbra_cpp"] = (function() {
  20690. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20691. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20692. return real___GLOBAL__sub_I_umbra_cpp.apply(null, arguments);
  20693. });
  20694. var real____cxa_can_catch = asm["___cxa_can_catch"];
  20695. asm["___cxa_can_catch"] = (function() {
  20696. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20697. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20698. return real____cxa_can_catch.apply(null, arguments);
  20699. });
  20700. var real____cxa_demangle = asm["___cxa_demangle"];
  20701. asm["___cxa_demangle"] = (function() {
  20702. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20703. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20704. return real____cxa_demangle.apply(null, arguments);
  20705. });
  20706. var real____cxa_is_pointer_type = asm["___cxa_is_pointer_type"];
  20707. asm["___cxa_is_pointer_type"] = (function() {
  20708. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20709. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20710. return real____cxa_is_pointer_type.apply(null, arguments);
  20711. });
  20712. var real____cxx_global_var_init_10 = asm["___cxx_global_var_init_10"];
  20713. asm["___cxx_global_var_init_10"] = (function() {
  20714. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20715. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20716. return real____cxx_global_var_init_10.apply(null, arguments);
  20717. });
  20718. var real____cxx_global_var_init_104 = asm["___cxx_global_var_init_104"];
  20719. asm["___cxx_global_var_init_104"] = (function() {
  20720. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20721. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20722. return real____cxx_global_var_init_104.apply(null, arguments);
  20723. });
  20724. var real____cxx_global_var_init_105 = asm["___cxx_global_var_init_105"];
  20725. asm["___cxx_global_var_init_105"] = (function() {
  20726. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20727. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20728. return real____cxx_global_var_init_105.apply(null, arguments);
  20729. });
  20730. var real____cxx_global_var_init_10913 = asm["___cxx_global_var_init_10913"];
  20731. asm["___cxx_global_var_init_10913"] = (function() {
  20732. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20733. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20734. return real____cxx_global_var_init_10913.apply(null, arguments);
  20735. });
  20736. var real____cxx_global_var_init_10_8165 = asm["___cxx_global_var_init_10_8165"];
  20737. asm["___cxx_global_var_init_10_8165"] = (function() {
  20738. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20739. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20740. return real____cxx_global_var_init_10_8165.apply(null, arguments);
  20741. });
  20742. var real____cxx_global_var_init_10_9872 = asm["___cxx_global_var_init_10_9872"];
  20743. asm["___cxx_global_var_init_10_9872"] = (function() {
  20744. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20745. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20746. return real____cxx_global_var_init_10_9872.apply(null, arguments);
  20747. });
  20748. var real____cxx_global_var_init_11 = asm["___cxx_global_var_init_11"];
  20749. asm["___cxx_global_var_init_11"] = (function() {
  20750. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20751. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20752. return real____cxx_global_var_init_11.apply(null, arguments);
  20753. });
  20754. var real____cxx_global_var_init_110 = asm["___cxx_global_var_init_110"];
  20755. asm["___cxx_global_var_init_110"] = (function() {
  20756. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20757. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20758. return real____cxx_global_var_init_110.apply(null, arguments);
  20759. });
  20760. var real____cxx_global_var_init_111 = asm["___cxx_global_var_init_111"];
  20761. asm["___cxx_global_var_init_111"] = (function() {
  20762. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20763. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20764. return real____cxx_global_var_init_111.apply(null, arguments);
  20765. });
  20766. var real____cxx_global_var_init_112 = asm["___cxx_global_var_init_112"];
  20767. asm["___cxx_global_var_init_112"] = (function() {
  20768. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20769. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20770. return real____cxx_global_var_init_112.apply(null, arguments);
  20771. });
  20772. var real____cxx_global_var_init_113 = asm["___cxx_global_var_init_113"];
  20773. asm["___cxx_global_var_init_113"] = (function() {
  20774. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20775. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20776. return real____cxx_global_var_init_113.apply(null, arguments);
  20777. });
  20778. var real____cxx_global_var_init_114 = asm["___cxx_global_var_init_114"];
  20779. asm["___cxx_global_var_init_114"] = (function() {
  20780. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20781. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20782. return real____cxx_global_var_init_114.apply(null, arguments);
  20783. });
  20784. var real____cxx_global_var_init_11_8166 = asm["___cxx_global_var_init_11_8166"];
  20785. asm["___cxx_global_var_init_11_8166"] = (function() {
  20786. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20787. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20788. return real____cxx_global_var_init_11_8166.apply(null, arguments);
  20789. });
  20790. var real____cxx_global_var_init_12 = asm["___cxx_global_var_init_12"];
  20791. asm["___cxx_global_var_init_12"] = (function() {
  20792. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20793. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20794. return real____cxx_global_var_init_12.apply(null, arguments);
  20795. });
  20796. var real____cxx_global_var_init_12_8167 = asm["___cxx_global_var_init_12_8167"];
  20797. asm["___cxx_global_var_init_12_8167"] = (function() {
  20798. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20799. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20800. return real____cxx_global_var_init_12_8167.apply(null, arguments);
  20801. });
  20802. var real____cxx_global_var_init_136 = asm["___cxx_global_var_init_136"];
  20803. asm["___cxx_global_var_init_136"] = (function() {
  20804. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20805. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20806. return real____cxx_global_var_init_136.apply(null, arguments);
  20807. });
  20808. var real____cxx_global_var_init_137 = asm["___cxx_global_var_init_137"];
  20809. asm["___cxx_global_var_init_137"] = (function() {
  20810. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20811. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20812. return real____cxx_global_var_init_137.apply(null, arguments);
  20813. });
  20814. var real____cxx_global_var_init_144 = asm["___cxx_global_var_init_144"];
  20815. asm["___cxx_global_var_init_144"] = (function() {
  20816. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20817. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20818. return real____cxx_global_var_init_144.apply(null, arguments);
  20819. });
  20820. var real____cxx_global_var_init_148 = asm["___cxx_global_var_init_148"];
  20821. asm["___cxx_global_var_init_148"] = (function() {
  20822. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20823. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20824. return real____cxx_global_var_init_148.apply(null, arguments);
  20825. });
  20826. var real____cxx_global_var_init_149 = asm["___cxx_global_var_init_149"];
  20827. asm["___cxx_global_var_init_149"] = (function() {
  20828. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20829. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20830. return real____cxx_global_var_init_149.apply(null, arguments);
  20831. });
  20832. var real____cxx_global_var_init_15 = asm["___cxx_global_var_init_15"];
  20833. asm["___cxx_global_var_init_15"] = (function() {
  20834. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20835. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20836. return real____cxx_global_var_init_15.apply(null, arguments);
  20837. });
  20838. var real____cxx_global_var_init_150 = asm["___cxx_global_var_init_150"];
  20839. asm["___cxx_global_var_init_150"] = (function() {
  20840. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20841. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20842. return real____cxx_global_var_init_150.apply(null, arguments);
  20843. });
  20844. var real____cxx_global_var_init_155 = asm["___cxx_global_var_init_155"];
  20845. asm["___cxx_global_var_init_155"] = (function() {
  20846. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20847. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20848. return real____cxx_global_var_init_155.apply(null, arguments);
  20849. });
  20850. var real____cxx_global_var_init_162 = asm["___cxx_global_var_init_162"];
  20851. asm["___cxx_global_var_init_162"] = (function() {
  20852. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20853. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20854. return real____cxx_global_var_init_162.apply(null, arguments);
  20855. });
  20856. var real____cxx_global_var_init_17 = asm["___cxx_global_var_init_17"];
  20857. asm["___cxx_global_var_init_17"] = (function() {
  20858. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20859. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20860. return real____cxx_global_var_init_17.apply(null, arguments);
  20861. });
  20862. var real____cxx_global_var_init_17063 = asm["___cxx_global_var_init_17063"];
  20863. asm["___cxx_global_var_init_17063"] = (function() {
  20864. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20865. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20866. return real____cxx_global_var_init_17063.apply(null, arguments);
  20867. });
  20868. var real____cxx_global_var_init_172 = asm["___cxx_global_var_init_172"];
  20869. asm["___cxx_global_var_init_172"] = (function() {
  20870. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20871. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20872. return real____cxx_global_var_init_172.apply(null, arguments);
  20873. });
  20874. var real____cxx_global_var_init_173 = asm["___cxx_global_var_init_173"];
  20875. asm["___cxx_global_var_init_173"] = (function() {
  20876. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20877. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20878. return real____cxx_global_var_init_173.apply(null, arguments);
  20879. });
  20880. var real____cxx_global_var_init_174 = asm["___cxx_global_var_init_174"];
  20881. asm["___cxx_global_var_init_174"] = (function() {
  20882. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20883. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20884. return real____cxx_global_var_init_174.apply(null, arguments);
  20885. });
  20886. var real____cxx_global_var_init_175 = asm["___cxx_global_var_init_175"];
  20887. asm["___cxx_global_var_init_175"] = (function() {
  20888. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20889. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20890. return real____cxx_global_var_init_175.apply(null, arguments);
  20891. });
  20892. var real____cxx_global_var_init_176 = asm["___cxx_global_var_init_176"];
  20893. asm["___cxx_global_var_init_176"] = (function() {
  20894. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20895. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20896. return real____cxx_global_var_init_176.apply(null, arguments);
  20897. });
  20898. var real____cxx_global_var_init_177 = asm["___cxx_global_var_init_177"];
  20899. asm["___cxx_global_var_init_177"] = (function() {
  20900. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20901. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20902. return real____cxx_global_var_init_177.apply(null, arguments);
  20903. });
  20904. var real____cxx_global_var_init_178 = asm["___cxx_global_var_init_178"];
  20905. asm["___cxx_global_var_init_178"] = (function() {
  20906. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20907. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20908. return real____cxx_global_var_init_178.apply(null, arguments);
  20909. });
  20910. var real____cxx_global_var_init_179 = asm["___cxx_global_var_init_179"];
  20911. asm["___cxx_global_var_init_179"] = (function() {
  20912. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20913. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20914. return real____cxx_global_var_init_179.apply(null, arguments);
  20915. });
  20916. var real____cxx_global_var_init_18 = asm["___cxx_global_var_init_18"];
  20917. asm["___cxx_global_var_init_18"] = (function() {
  20918. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20919. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20920. return real____cxx_global_var_init_18.apply(null, arguments);
  20921. });
  20922. var real____cxx_global_var_init_180 = asm["___cxx_global_var_init_180"];
  20923. asm["___cxx_global_var_init_180"] = (function() {
  20924. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20925. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20926. return real____cxx_global_var_init_180.apply(null, arguments);
  20927. });
  20928. var real____cxx_global_var_init_181 = asm["___cxx_global_var_init_181"];
  20929. asm["___cxx_global_var_init_181"] = (function() {
  20930. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20931. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20932. return real____cxx_global_var_init_181.apply(null, arguments);
  20933. });
  20934. var real____cxx_global_var_init_182 = asm["___cxx_global_var_init_182"];
  20935. asm["___cxx_global_var_init_182"] = (function() {
  20936. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20937. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20938. return real____cxx_global_var_init_182.apply(null, arguments);
  20939. });
  20940. var real____cxx_global_var_init_183 = asm["___cxx_global_var_init_183"];
  20941. asm["___cxx_global_var_init_183"] = (function() {
  20942. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20943. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20944. return real____cxx_global_var_init_183.apply(null, arguments);
  20945. });
  20946. var real____cxx_global_var_init_184 = asm["___cxx_global_var_init_184"];
  20947. asm["___cxx_global_var_init_184"] = (function() {
  20948. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20949. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20950. return real____cxx_global_var_init_184.apply(null, arguments);
  20951. });
  20952. var real____cxx_global_var_init_185 = asm["___cxx_global_var_init_185"];
  20953. asm["___cxx_global_var_init_185"] = (function() {
  20954. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20955. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20956. return real____cxx_global_var_init_185.apply(null, arguments);
  20957. });
  20958. var real____cxx_global_var_init_186 = asm["___cxx_global_var_init_186"];
  20959. asm["___cxx_global_var_init_186"] = (function() {
  20960. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20961. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20962. return real____cxx_global_var_init_186.apply(null, arguments);
  20963. });
  20964. var real____cxx_global_var_init_187 = asm["___cxx_global_var_init_187"];
  20965. asm["___cxx_global_var_init_187"] = (function() {
  20966. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20967. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20968. return real____cxx_global_var_init_187.apply(null, arguments);
  20969. });
  20970. var real____cxx_global_var_init_188 = asm["___cxx_global_var_init_188"];
  20971. asm["___cxx_global_var_init_188"] = (function() {
  20972. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20973. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20974. return real____cxx_global_var_init_188.apply(null, arguments);
  20975. });
  20976. var real____cxx_global_var_init_189 = asm["___cxx_global_var_init_189"];
  20977. asm["___cxx_global_var_init_189"] = (function() {
  20978. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20979. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20980. return real____cxx_global_var_init_189.apply(null, arguments);
  20981. });
  20982. var real____cxx_global_var_init_19 = asm["___cxx_global_var_init_19"];
  20983. asm["___cxx_global_var_init_19"] = (function() {
  20984. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20985. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20986. return real____cxx_global_var_init_19.apply(null, arguments);
  20987. });
  20988. var real____cxx_global_var_init_190 = asm["___cxx_global_var_init_190"];
  20989. asm["___cxx_global_var_init_190"] = (function() {
  20990. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20991. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20992. return real____cxx_global_var_init_190.apply(null, arguments);
  20993. });
  20994. var real____cxx_global_var_init_191 = asm["___cxx_global_var_init_191"];
  20995. asm["___cxx_global_var_init_191"] = (function() {
  20996. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  20997. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  20998. return real____cxx_global_var_init_191.apply(null, arguments);
  20999. });
  21000. var real____cxx_global_var_init_192 = asm["___cxx_global_var_init_192"];
  21001. asm["___cxx_global_var_init_192"] = (function() {
  21002. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21003. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21004. return real____cxx_global_var_init_192.apply(null, arguments);
  21005. });
  21006. var real____cxx_global_var_init_192_8380 = asm["___cxx_global_var_init_192_8380"];
  21007. asm["___cxx_global_var_init_192_8380"] = (function() {
  21008. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21009. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21010. return real____cxx_global_var_init_192_8380.apply(null, arguments);
  21011. });
  21012. var real____cxx_global_var_init_193 = asm["___cxx_global_var_init_193"];
  21013. asm["___cxx_global_var_init_193"] = (function() {
  21014. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21015. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21016. return real____cxx_global_var_init_193.apply(null, arguments);
  21017. });
  21018. var real____cxx_global_var_init_193_8381 = asm["___cxx_global_var_init_193_8381"];
  21019. asm["___cxx_global_var_init_193_8381"] = (function() {
  21020. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21021. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21022. return real____cxx_global_var_init_193_8381.apply(null, arguments);
  21023. });
  21024. var real____cxx_global_var_init_194 = asm["___cxx_global_var_init_194"];
  21025. asm["___cxx_global_var_init_194"] = (function() {
  21026. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21027. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21028. return real____cxx_global_var_init_194.apply(null, arguments);
  21029. });
  21030. var real____cxx_global_var_init_194_8382 = asm["___cxx_global_var_init_194_8382"];
  21031. asm["___cxx_global_var_init_194_8382"] = (function() {
  21032. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21033. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21034. return real____cxx_global_var_init_194_8382.apply(null, arguments);
  21035. });
  21036. var real____cxx_global_var_init_195 = asm["___cxx_global_var_init_195"];
  21037. asm["___cxx_global_var_init_195"] = (function() {
  21038. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21039. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21040. return real____cxx_global_var_init_195.apply(null, arguments);
  21041. });
  21042. var real____cxx_global_var_init_195_8383 = asm["___cxx_global_var_init_195_8383"];
  21043. asm["___cxx_global_var_init_195_8383"] = (function() {
  21044. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21045. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21046. return real____cxx_global_var_init_195_8383.apply(null, arguments);
  21047. });
  21048. var real____cxx_global_var_init_196 = asm["___cxx_global_var_init_196"];
  21049. asm["___cxx_global_var_init_196"] = (function() {
  21050. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21051. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21052. return real____cxx_global_var_init_196.apply(null, arguments);
  21053. });
  21054. var real____cxx_global_var_init_196_8384 = asm["___cxx_global_var_init_196_8384"];
  21055. asm["___cxx_global_var_init_196_8384"] = (function() {
  21056. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21057. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21058. return real____cxx_global_var_init_196_8384.apply(null, arguments);
  21059. });
  21060. var real____cxx_global_var_init_197 = asm["___cxx_global_var_init_197"];
  21061. asm["___cxx_global_var_init_197"] = (function() {
  21062. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21063. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21064. return real____cxx_global_var_init_197.apply(null, arguments);
  21065. });
  21066. var real____cxx_global_var_init_197_8385 = asm["___cxx_global_var_init_197_8385"];
  21067. asm["___cxx_global_var_init_197_8385"] = (function() {
  21068. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21069. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21070. return real____cxx_global_var_init_197_8385.apply(null, arguments);
  21071. });
  21072. var real____cxx_global_var_init_198 = asm["___cxx_global_var_init_198"];
  21073. asm["___cxx_global_var_init_198"] = (function() {
  21074. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21075. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21076. return real____cxx_global_var_init_198.apply(null, arguments);
  21077. });
  21078. var real____cxx_global_var_init_198_8386 = asm["___cxx_global_var_init_198_8386"];
  21079. asm["___cxx_global_var_init_198_8386"] = (function() {
  21080. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21081. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21082. return real____cxx_global_var_init_198_8386.apply(null, arguments);
  21083. });
  21084. var real____cxx_global_var_init_199 = asm["___cxx_global_var_init_199"];
  21085. asm["___cxx_global_var_init_199"] = (function() {
  21086. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21087. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21088. return real____cxx_global_var_init_199.apply(null, arguments);
  21089. });
  21090. var real____cxx_global_var_init_199_1314 = asm["___cxx_global_var_init_199_1314"];
  21091. asm["___cxx_global_var_init_199_1314"] = (function() {
  21092. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21093. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21094. return real____cxx_global_var_init_199_1314.apply(null, arguments);
  21095. });
  21096. var real____cxx_global_var_init_1_7199 = asm["___cxx_global_var_init_1_7199"];
  21097. asm["___cxx_global_var_init_1_7199"] = (function() {
  21098. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21099. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21100. return real____cxx_global_var_init_1_7199.apply(null, arguments);
  21101. });
  21102. var real____cxx_global_var_init_1_9527 = asm["___cxx_global_var_init_1_9527"];
  21103. asm["___cxx_global_var_init_1_9527"] = (function() {
  21104. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21105. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21106. return real____cxx_global_var_init_1_9527.apply(null, arguments);
  21107. });
  21108. var real____cxx_global_var_init_20 = asm["___cxx_global_var_init_20"];
  21109. asm["___cxx_global_var_init_20"] = (function() {
  21110. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21111. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21112. return real____cxx_global_var_init_20.apply(null, arguments);
  21113. });
  21114. var real____cxx_global_var_init_200 = asm["___cxx_global_var_init_200"];
  21115. asm["___cxx_global_var_init_200"] = (function() {
  21116. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21117. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21118. return real____cxx_global_var_init_200.apply(null, arguments);
  21119. });
  21120. var real____cxx_global_var_init_201 = asm["___cxx_global_var_init_201"];
  21121. asm["___cxx_global_var_init_201"] = (function() {
  21122. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21123. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21124. return real____cxx_global_var_init_201.apply(null, arguments);
  21125. });
  21126. var real____cxx_global_var_init_202 = asm["___cxx_global_var_init_202"];
  21127. asm["___cxx_global_var_init_202"] = (function() {
  21128. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21129. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21130. return real____cxx_global_var_init_202.apply(null, arguments);
  21131. });
  21132. var real____cxx_global_var_init_203 = asm["___cxx_global_var_init_203"];
  21133. asm["___cxx_global_var_init_203"] = (function() {
  21134. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21135. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21136. return real____cxx_global_var_init_203.apply(null, arguments);
  21137. });
  21138. var real____cxx_global_var_init_204 = asm["___cxx_global_var_init_204"];
  21139. asm["___cxx_global_var_init_204"] = (function() {
  21140. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21141. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21142. return real____cxx_global_var_init_204.apply(null, arguments);
  21143. });
  21144. var real____cxx_global_var_init_205 = asm["___cxx_global_var_init_205"];
  21145. asm["___cxx_global_var_init_205"] = (function() {
  21146. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21147. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21148. return real____cxx_global_var_init_205.apply(null, arguments);
  21149. });
  21150. var real____cxx_global_var_init_206 = asm["___cxx_global_var_init_206"];
  21151. asm["___cxx_global_var_init_206"] = (function() {
  21152. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21153. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21154. return real____cxx_global_var_init_206.apply(null, arguments);
  21155. });
  21156. var real____cxx_global_var_init_207 = asm["___cxx_global_var_init_207"];
  21157. asm["___cxx_global_var_init_207"] = (function() {
  21158. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21159. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21160. return real____cxx_global_var_init_207.apply(null, arguments);
  21161. });
  21162. var real____cxx_global_var_init_208 = asm["___cxx_global_var_init_208"];
  21163. asm["___cxx_global_var_init_208"] = (function() {
  21164. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21165. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21166. return real____cxx_global_var_init_208.apply(null, arguments);
  21167. });
  21168. var real____cxx_global_var_init_209 = asm["___cxx_global_var_init_209"];
  21169. asm["___cxx_global_var_init_209"] = (function() {
  21170. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21171. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21172. return real____cxx_global_var_init_209.apply(null, arguments);
  21173. });
  21174. var real____cxx_global_var_init_21 = asm["___cxx_global_var_init_21"];
  21175. asm["___cxx_global_var_init_21"] = (function() {
  21176. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21177. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21178. return real____cxx_global_var_init_21.apply(null, arguments);
  21179. });
  21180. var real____cxx_global_var_init_210 = asm["___cxx_global_var_init_210"];
  21181. asm["___cxx_global_var_init_210"] = (function() {
  21182. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21183. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21184. return real____cxx_global_var_init_210.apply(null, arguments);
  21185. });
  21186. var real____cxx_global_var_init_210_8387 = asm["___cxx_global_var_init_210_8387"];
  21187. asm["___cxx_global_var_init_210_8387"] = (function() {
  21188. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21189. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21190. return real____cxx_global_var_init_210_8387.apply(null, arguments);
  21191. });
  21192. var real____cxx_global_var_init_211 = asm["___cxx_global_var_init_211"];
  21193. asm["___cxx_global_var_init_211"] = (function() {
  21194. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21195. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21196. return real____cxx_global_var_init_211.apply(null, arguments);
  21197. });
  21198. var real____cxx_global_var_init_211_8388 = asm["___cxx_global_var_init_211_8388"];
  21199. asm["___cxx_global_var_init_211_8388"] = (function() {
  21200. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21201. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21202. return real____cxx_global_var_init_211_8388.apply(null, arguments);
  21203. });
  21204. var real____cxx_global_var_init_212 = asm["___cxx_global_var_init_212"];
  21205. asm["___cxx_global_var_init_212"] = (function() {
  21206. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21207. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21208. return real____cxx_global_var_init_212.apply(null, arguments);
  21209. });
  21210. var real____cxx_global_var_init_213 = asm["___cxx_global_var_init_213"];
  21211. asm["___cxx_global_var_init_213"] = (function() {
  21212. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21213. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21214. return real____cxx_global_var_init_213.apply(null, arguments);
  21215. });
  21216. var real____cxx_global_var_init_214 = asm["___cxx_global_var_init_214"];
  21217. asm["___cxx_global_var_init_214"] = (function() {
  21218. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21219. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21220. return real____cxx_global_var_init_214.apply(null, arguments);
  21221. });
  21222. var real____cxx_global_var_init_215 = asm["___cxx_global_var_init_215"];
  21223. asm["___cxx_global_var_init_215"] = (function() {
  21224. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21225. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21226. return real____cxx_global_var_init_215.apply(null, arguments);
  21227. });
  21228. var real____cxx_global_var_init_216 = asm["___cxx_global_var_init_216"];
  21229. asm["___cxx_global_var_init_216"] = (function() {
  21230. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21231. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21232. return real____cxx_global_var_init_216.apply(null, arguments);
  21233. });
  21234. var real____cxx_global_var_init_217 = asm["___cxx_global_var_init_217"];
  21235. asm["___cxx_global_var_init_217"] = (function() {
  21236. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21237. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21238. return real____cxx_global_var_init_217.apply(null, arguments);
  21239. });
  21240. var real____cxx_global_var_init_218 = asm["___cxx_global_var_init_218"];
  21241. asm["___cxx_global_var_init_218"] = (function() {
  21242. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21243. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21244. return real____cxx_global_var_init_218.apply(null, arguments);
  21245. });
  21246. var real____cxx_global_var_init_219 = asm["___cxx_global_var_init_219"];
  21247. asm["___cxx_global_var_init_219"] = (function() {
  21248. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21249. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21250. return real____cxx_global_var_init_219.apply(null, arguments);
  21251. });
  21252. var real____cxx_global_var_init_220 = asm["___cxx_global_var_init_220"];
  21253. asm["___cxx_global_var_init_220"] = (function() {
  21254. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21255. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21256. return real____cxx_global_var_init_220.apply(null, arguments);
  21257. });
  21258. var real____cxx_global_var_init_221 = asm["___cxx_global_var_init_221"];
  21259. asm["___cxx_global_var_init_221"] = (function() {
  21260. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21261. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21262. return real____cxx_global_var_init_221.apply(null, arguments);
  21263. });
  21264. var real____cxx_global_var_init_222 = asm["___cxx_global_var_init_222"];
  21265. asm["___cxx_global_var_init_222"] = (function() {
  21266. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21267. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21268. return real____cxx_global_var_init_222.apply(null, arguments);
  21269. });
  21270. var real____cxx_global_var_init_223 = asm["___cxx_global_var_init_223"];
  21271. asm["___cxx_global_var_init_223"] = (function() {
  21272. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21273. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21274. return real____cxx_global_var_init_223.apply(null, arguments);
  21275. });
  21276. var real____cxx_global_var_init_224 = asm["___cxx_global_var_init_224"];
  21277. asm["___cxx_global_var_init_224"] = (function() {
  21278. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21279. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21280. return real____cxx_global_var_init_224.apply(null, arguments);
  21281. });
  21282. var real____cxx_global_var_init_225 = asm["___cxx_global_var_init_225"];
  21283. asm["___cxx_global_var_init_225"] = (function() {
  21284. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21285. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21286. return real____cxx_global_var_init_225.apply(null, arguments);
  21287. });
  21288. var real____cxx_global_var_init_226 = asm["___cxx_global_var_init_226"];
  21289. asm["___cxx_global_var_init_226"] = (function() {
  21290. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21291. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21292. return real____cxx_global_var_init_226.apply(null, arguments);
  21293. });
  21294. var real____cxx_global_var_init_227 = asm["___cxx_global_var_init_227"];
  21295. asm["___cxx_global_var_init_227"] = (function() {
  21296. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21297. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21298. return real____cxx_global_var_init_227.apply(null, arguments);
  21299. });
  21300. var real____cxx_global_var_init_25 = asm["___cxx_global_var_init_25"];
  21301. asm["___cxx_global_var_init_25"] = (function() {
  21302. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21303. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21304. return real____cxx_global_var_init_25.apply(null, arguments);
  21305. });
  21306. var real____cxx_global_var_init_26 = asm["___cxx_global_var_init_26"];
  21307. asm["___cxx_global_var_init_26"] = (function() {
  21308. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21309. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21310. return real____cxx_global_var_init_26.apply(null, arguments);
  21311. });
  21312. var real____cxx_global_var_init_27 = asm["___cxx_global_var_init_27"];
  21313. asm["___cxx_global_var_init_27"] = (function() {
  21314. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21315. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21316. return real____cxx_global_var_init_27.apply(null, arguments);
  21317. });
  21318. var real____cxx_global_var_init_27_5703 = asm["___cxx_global_var_init_27_5703"];
  21319. asm["___cxx_global_var_init_27_5703"] = (function() {
  21320. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21321. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21322. return real____cxx_global_var_init_27_5703.apply(null, arguments);
  21323. });
  21324. var real____cxx_global_var_init_27_9088 = asm["___cxx_global_var_init_27_9088"];
  21325. asm["___cxx_global_var_init_27_9088"] = (function() {
  21326. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21327. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21328. return real____cxx_global_var_init_27_9088.apply(null, arguments);
  21329. });
  21330. var real____cxx_global_var_init_28 = asm["___cxx_global_var_init_28"];
  21331. asm["___cxx_global_var_init_28"] = (function() {
  21332. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21333. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21334. return real____cxx_global_var_init_28.apply(null, arguments);
  21335. });
  21336. var real____cxx_global_var_init_28_7239 = asm["___cxx_global_var_init_28_7239"];
  21337. asm["___cxx_global_var_init_28_7239"] = (function() {
  21338. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21339. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21340. return real____cxx_global_var_init_28_7239.apply(null, arguments);
  21341. });
  21342. var real____cxx_global_var_init_29_4254 = asm["___cxx_global_var_init_29_4254"];
  21343. asm["___cxx_global_var_init_29_4254"] = (function() {
  21344. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21345. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21346. return real____cxx_global_var_init_29_4254.apply(null, arguments);
  21347. });
  21348. var real____cxx_global_var_init_29_7240 = asm["___cxx_global_var_init_29_7240"];
  21349. asm["___cxx_global_var_init_29_7240"] = (function() {
  21350. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21351. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21352. return real____cxx_global_var_init_29_7240.apply(null, arguments);
  21353. });
  21354. var real____cxx_global_var_init_29_9089 = asm["___cxx_global_var_init_29_9089"];
  21355. asm["___cxx_global_var_init_29_9089"] = (function() {
  21356. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21357. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21358. return real____cxx_global_var_init_29_9089.apply(null, arguments);
  21359. });
  21360. var real____cxx_global_var_init_2_9528 = asm["___cxx_global_var_init_2_9528"];
  21361. asm["___cxx_global_var_init_2_9528"] = (function() {
  21362. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21363. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21364. return real____cxx_global_var_init_2_9528.apply(null, arguments);
  21365. });
  21366. var real____cxx_global_var_init_2_9864 = asm["___cxx_global_var_init_2_9864"];
  21367. asm["___cxx_global_var_init_2_9864"] = (function() {
  21368. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21369. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21370. return real____cxx_global_var_init_2_9864.apply(null, arguments);
  21371. });
  21372. var real____cxx_global_var_init_30 = asm["___cxx_global_var_init_30"];
  21373. asm["___cxx_global_var_init_30"] = (function() {
  21374. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21375. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21376. return real____cxx_global_var_init_30.apply(null, arguments);
  21377. });
  21378. var real____cxx_global_var_init_30_4255 = asm["___cxx_global_var_init_30_4255"];
  21379. asm["___cxx_global_var_init_30_4255"] = (function() {
  21380. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21381. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21382. return real____cxx_global_var_init_30_4255.apply(null, arguments);
  21383. });
  21384. var real____cxx_global_var_init_31_4256 = asm["___cxx_global_var_init_31_4256"];
  21385. asm["___cxx_global_var_init_31_4256"] = (function() {
  21386. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21387. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21388. return real____cxx_global_var_init_31_4256.apply(null, arguments);
  21389. });
  21390. var real____cxx_global_var_init_31_8788 = asm["___cxx_global_var_init_31_8788"];
  21391. asm["___cxx_global_var_init_31_8788"] = (function() {
  21392. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21393. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21394. return real____cxx_global_var_init_31_8788.apply(null, arguments);
  21395. });
  21396. var real____cxx_global_var_init_31_9090 = asm["___cxx_global_var_init_31_9090"];
  21397. asm["___cxx_global_var_init_31_9090"] = (function() {
  21398. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21399. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21400. return real____cxx_global_var_init_31_9090.apply(null, arguments);
  21401. });
  21402. var real____cxx_global_var_init_32 = asm["___cxx_global_var_init_32"];
  21403. asm["___cxx_global_var_init_32"] = (function() {
  21404. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21405. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21406. return real____cxx_global_var_init_32.apply(null, arguments);
  21407. });
  21408. var real____cxx_global_var_init_33_10225 = asm["___cxx_global_var_init_33_10225"];
  21409. asm["___cxx_global_var_init_33_10225"] = (function() {
  21410. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21411. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21412. return real____cxx_global_var_init_33_10225.apply(null, arguments);
  21413. });
  21414. var real____cxx_global_var_init_33_8789 = asm["___cxx_global_var_init_33_8789"];
  21415. asm["___cxx_global_var_init_33_8789"] = (function() {
  21416. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21417. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21418. return real____cxx_global_var_init_33_8789.apply(null, arguments);
  21419. });
  21420. var real____cxx_global_var_init_34 = asm["___cxx_global_var_init_34"];
  21421. asm["___cxx_global_var_init_34"] = (function() {
  21422. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21423. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21424. return real____cxx_global_var_init_34.apply(null, arguments);
  21425. });
  21426. var real____cxx_global_var_init_34_8790 = asm["___cxx_global_var_init_34_8790"];
  21427. asm["___cxx_global_var_init_34_8790"] = (function() {
  21428. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21429. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21430. return real____cxx_global_var_init_34_8790.apply(null, arguments);
  21431. });
  21432. var real____cxx_global_var_init_34_9202 = asm["___cxx_global_var_init_34_9202"];
  21433. asm["___cxx_global_var_init_34_9202"] = (function() {
  21434. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21435. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21436. return real____cxx_global_var_init_34_9202.apply(null, arguments);
  21437. });
  21438. var real____cxx_global_var_init_35 = asm["___cxx_global_var_init_35"];
  21439. asm["___cxx_global_var_init_35"] = (function() {
  21440. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21441. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21442. return real____cxx_global_var_init_35.apply(null, arguments);
  21443. });
  21444. var real____cxx_global_var_init_35_7727 = asm["___cxx_global_var_init_35_7727"];
  21445. asm["___cxx_global_var_init_35_7727"] = (function() {
  21446. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21447. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21448. return real____cxx_global_var_init_35_7727.apply(null, arguments);
  21449. });
  21450. var real____cxx_global_var_init_36 = asm["___cxx_global_var_init_36"];
  21451. asm["___cxx_global_var_init_36"] = (function() {
  21452. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21453. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21454. return real____cxx_global_var_init_36.apply(null, arguments);
  21455. });
  21456. var real____cxx_global_var_init_36_7728 = asm["___cxx_global_var_init_36_7728"];
  21457. asm["___cxx_global_var_init_36_7728"] = (function() {
  21458. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21459. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21460. return real____cxx_global_var_init_36_7728.apply(null, arguments);
  21461. });
  21462. var real____cxx_global_var_init_37 = asm["___cxx_global_var_init_37"];
  21463. asm["___cxx_global_var_init_37"] = (function() {
  21464. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21465. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21466. return real____cxx_global_var_init_37.apply(null, arguments);
  21467. });
  21468. var real____cxx_global_var_init_38 = asm["___cxx_global_var_init_38"];
  21469. asm["___cxx_global_var_init_38"] = (function() {
  21470. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21471. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21472. return real____cxx_global_var_init_38.apply(null, arguments);
  21473. });
  21474. var real____cxx_global_var_init_39 = asm["___cxx_global_var_init_39"];
  21475. asm["___cxx_global_var_init_39"] = (function() {
  21476. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21477. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21478. return real____cxx_global_var_init_39.apply(null, arguments);
  21479. });
  21480. var real____cxx_global_var_init_3_27 = asm["___cxx_global_var_init_3_27"];
  21481. asm["___cxx_global_var_init_3_27"] = (function() {
  21482. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21483. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21484. return real____cxx_global_var_init_3_27.apply(null, arguments);
  21485. });
  21486. var real____cxx_global_var_init_3_4490 = asm["___cxx_global_var_init_3_4490"];
  21487. asm["___cxx_global_var_init_3_4490"] = (function() {
  21488. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21489. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21490. return real____cxx_global_var_init_3_4490.apply(null, arguments);
  21491. });
  21492. var real____cxx_global_var_init_3_9865 = asm["___cxx_global_var_init_3_9865"];
  21493. asm["___cxx_global_var_init_3_9865"] = (function() {
  21494. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21495. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21496. return real____cxx_global_var_init_3_9865.apply(null, arguments);
  21497. });
  21498. var real____cxx_global_var_init_40 = asm["___cxx_global_var_init_40"];
  21499. asm["___cxx_global_var_init_40"] = (function() {
  21500. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21501. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21502. return real____cxx_global_var_init_40.apply(null, arguments);
  21503. });
  21504. var real____cxx_global_var_init_41 = asm["___cxx_global_var_init_41"];
  21505. asm["___cxx_global_var_init_41"] = (function() {
  21506. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21507. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21508. return real____cxx_global_var_init_41.apply(null, arguments);
  21509. });
  21510. var real____cxx_global_var_init_4115 = asm["___cxx_global_var_init_4115"];
  21511. asm["___cxx_global_var_init_4115"] = (function() {
  21512. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21513. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21514. return real____cxx_global_var_init_4115.apply(null, arguments);
  21515. });
  21516. var real____cxx_global_var_init_41_13464 = asm["___cxx_global_var_init_41_13464"];
  21517. asm["___cxx_global_var_init_41_13464"] = (function() {
  21518. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21519. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21520. return real____cxx_global_var_init_41_13464.apply(null, arguments);
  21521. });
  21522. var real____cxx_global_var_init_42 = asm["___cxx_global_var_init_42"];
  21523. asm["___cxx_global_var_init_42"] = (function() {
  21524. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21525. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21526. return real____cxx_global_var_init_42.apply(null, arguments);
  21527. });
  21528. var real____cxx_global_var_init_43 = asm["___cxx_global_var_init_43"];
  21529. asm["___cxx_global_var_init_43"] = (function() {
  21530. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21531. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21532. return real____cxx_global_var_init_43.apply(null, arguments);
  21533. });
  21534. var real____cxx_global_var_init_43_4837 = asm["___cxx_global_var_init_43_4837"];
  21535. asm["___cxx_global_var_init_43_4837"] = (function() {
  21536. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21537. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21538. return real____cxx_global_var_init_43_4837.apply(null, arguments);
  21539. });
  21540. var real____cxx_global_var_init_44 = asm["___cxx_global_var_init_44"];
  21541. asm["___cxx_global_var_init_44"] = (function() {
  21542. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21543. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21544. return real____cxx_global_var_init_44.apply(null, arguments);
  21545. });
  21546. var real____cxx_global_var_init_44_7946 = asm["___cxx_global_var_init_44_7946"];
  21547. asm["___cxx_global_var_init_44_7946"] = (function() {
  21548. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21549. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21550. return real____cxx_global_var_init_44_7946.apply(null, arguments);
  21551. });
  21552. var real____cxx_global_var_init_45 = asm["___cxx_global_var_init_45"];
  21553. asm["___cxx_global_var_init_45"] = (function() {
  21554. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21555. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21556. return real____cxx_global_var_init_45.apply(null, arguments);
  21557. });
  21558. var real____cxx_global_var_init_46 = asm["___cxx_global_var_init_46"];
  21559. asm["___cxx_global_var_init_46"] = (function() {
  21560. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21561. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21562. return real____cxx_global_var_init_46.apply(null, arguments);
  21563. });
  21564. var real____cxx_global_var_init_46_8335 = asm["___cxx_global_var_init_46_8335"];
  21565. asm["___cxx_global_var_init_46_8335"] = (function() {
  21566. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21567. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21568. return real____cxx_global_var_init_46_8335.apply(null, arguments);
  21569. });
  21570. var real____cxx_global_var_init_47 = asm["___cxx_global_var_init_47"];
  21571. asm["___cxx_global_var_init_47"] = (function() {
  21572. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21573. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21574. return real____cxx_global_var_init_47.apply(null, arguments);
  21575. });
  21576. var real____cxx_global_var_init_47_12782 = asm["___cxx_global_var_init_47_12782"];
  21577. asm["___cxx_global_var_init_47_12782"] = (function() {
  21578. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21579. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21580. return real____cxx_global_var_init_47_12782.apply(null, arguments);
  21581. });
  21582. var real____cxx_global_var_init_47_1315 = asm["___cxx_global_var_init_47_1315"];
  21583. asm["___cxx_global_var_init_47_1315"] = (function() {
  21584. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21585. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21586. return real____cxx_global_var_init_47_1315.apply(null, arguments);
  21587. });
  21588. var real____cxx_global_var_init_47_8336 = asm["___cxx_global_var_init_47_8336"];
  21589. asm["___cxx_global_var_init_47_8336"] = (function() {
  21590. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21591. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21592. return real____cxx_global_var_init_47_8336.apply(null, arguments);
  21593. });
  21594. var real____cxx_global_var_init_48 = asm["___cxx_global_var_init_48"];
  21595. asm["___cxx_global_var_init_48"] = (function() {
  21596. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21597. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21598. return real____cxx_global_var_init_48.apply(null, arguments);
  21599. });
  21600. var real____cxx_global_var_init_48_1316 = asm["___cxx_global_var_init_48_1316"];
  21601. asm["___cxx_global_var_init_48_1316"] = (function() {
  21602. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21603. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21604. return real____cxx_global_var_init_48_1316.apply(null, arguments);
  21605. });
  21606. var real____cxx_global_var_init_48_8337 = asm["___cxx_global_var_init_48_8337"];
  21607. asm["___cxx_global_var_init_48_8337"] = (function() {
  21608. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21609. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21610. return real____cxx_global_var_init_48_8337.apply(null, arguments);
  21611. });
  21612. var real____cxx_global_var_init_49 = asm["___cxx_global_var_init_49"];
  21613. asm["___cxx_global_var_init_49"] = (function() {
  21614. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21615. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21616. return real____cxx_global_var_init_49.apply(null, arguments);
  21617. });
  21618. var real____cxx_global_var_init_49_8338 = asm["___cxx_global_var_init_49_8338"];
  21619. asm["___cxx_global_var_init_49_8338"] = (function() {
  21620. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21621. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21622. return real____cxx_global_var_init_49_8338.apply(null, arguments);
  21623. });
  21624. var real____cxx_global_var_init_4_7142 = asm["___cxx_global_var_init_4_7142"];
  21625. asm["___cxx_global_var_init_4_7142"] = (function() {
  21626. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21627. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21628. return real____cxx_global_var_init_4_7142.apply(null, arguments);
  21629. });
  21630. var real____cxx_global_var_init_4_9866 = asm["___cxx_global_var_init_4_9866"];
  21631. asm["___cxx_global_var_init_4_9866"] = (function() {
  21632. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21633. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21634. return real____cxx_global_var_init_4_9866.apply(null, arguments);
  21635. });
  21636. var real____cxx_global_var_init_5 = asm["___cxx_global_var_init_5"];
  21637. asm["___cxx_global_var_init_5"] = (function() {
  21638. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21639. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21640. return real____cxx_global_var_init_5.apply(null, arguments);
  21641. });
  21642. var real____cxx_global_var_init_50 = asm["___cxx_global_var_init_50"];
  21643. asm["___cxx_global_var_init_50"] = (function() {
  21644. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21645. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21646. return real____cxx_global_var_init_50.apply(null, arguments);
  21647. });
  21648. var real____cxx_global_var_init_51 = asm["___cxx_global_var_init_51"];
  21649. asm["___cxx_global_var_init_51"] = (function() {
  21650. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21651. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21652. return real____cxx_global_var_init_51.apply(null, arguments);
  21653. });
  21654. var real____cxx_global_var_init_52 = asm["___cxx_global_var_init_52"];
  21655. asm["___cxx_global_var_init_52"] = (function() {
  21656. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21657. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21658. return real____cxx_global_var_init_52.apply(null, arguments);
  21659. });
  21660. var real____cxx_global_var_init_53 = asm["___cxx_global_var_init_53"];
  21661. asm["___cxx_global_var_init_53"] = (function() {
  21662. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21663. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21664. return real____cxx_global_var_init_53.apply(null, arguments);
  21665. });
  21666. var real____cxx_global_var_init_53_8339 = asm["___cxx_global_var_init_53_8339"];
  21667. asm["___cxx_global_var_init_53_8339"] = (function() {
  21668. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21669. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21670. return real____cxx_global_var_init_53_8339.apply(null, arguments);
  21671. });
  21672. var real____cxx_global_var_init_54 = asm["___cxx_global_var_init_54"];
  21673. asm["___cxx_global_var_init_54"] = (function() {
  21674. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21675. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21676. return real____cxx_global_var_init_54.apply(null, arguments);
  21677. });
  21678. var real____cxx_global_var_init_55 = asm["___cxx_global_var_init_55"];
  21679. asm["___cxx_global_var_init_55"] = (function() {
  21680. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21681. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21682. return real____cxx_global_var_init_55.apply(null, arguments);
  21683. });
  21684. var real____cxx_global_var_init_55_9709 = asm["___cxx_global_var_init_55_9709"];
  21685. asm["___cxx_global_var_init_55_9709"] = (function() {
  21686. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21687. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21688. return real____cxx_global_var_init_55_9709.apply(null, arguments);
  21689. });
  21690. var real____cxx_global_var_init_56 = asm["___cxx_global_var_init_56"];
  21691. asm["___cxx_global_var_init_56"] = (function() {
  21692. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21693. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21694. return real____cxx_global_var_init_56.apply(null, arguments);
  21695. });
  21696. var real____cxx_global_var_init_57 = asm["___cxx_global_var_init_57"];
  21697. asm["___cxx_global_var_init_57"] = (function() {
  21698. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21699. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21700. return real____cxx_global_var_init_57.apply(null, arguments);
  21701. });
  21702. var real____cxx_global_var_init_58 = asm["___cxx_global_var_init_58"];
  21703. asm["___cxx_global_var_init_58"] = (function() {
  21704. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21705. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21706. return real____cxx_global_var_init_58.apply(null, arguments);
  21707. });
  21708. var real____cxx_global_var_init_58_4838 = asm["___cxx_global_var_init_58_4838"];
  21709. asm["___cxx_global_var_init_58_4838"] = (function() {
  21710. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21711. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21712. return real____cxx_global_var_init_58_4838.apply(null, arguments);
  21713. });
  21714. var real____cxx_global_var_init_58_9710 = asm["___cxx_global_var_init_58_9710"];
  21715. asm["___cxx_global_var_init_58_9710"] = (function() {
  21716. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21717. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21718. return real____cxx_global_var_init_58_9710.apply(null, arguments);
  21719. });
  21720. var real____cxx_global_var_init_59 = asm["___cxx_global_var_init_59"];
  21721. asm["___cxx_global_var_init_59"] = (function() {
  21722. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21723. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21724. return real____cxx_global_var_init_59.apply(null, arguments);
  21725. });
  21726. var real____cxx_global_var_init_59_4839 = asm["___cxx_global_var_init_59_4839"];
  21727. asm["___cxx_global_var_init_59_4839"] = (function() {
  21728. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21729. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21730. return real____cxx_global_var_init_59_4839.apply(null, arguments);
  21731. });
  21732. var real____cxx_global_var_init_59_9711 = asm["___cxx_global_var_init_59_9711"];
  21733. asm["___cxx_global_var_init_59_9711"] = (function() {
  21734. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21735. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21736. return real____cxx_global_var_init_59_9711.apply(null, arguments);
  21737. });
  21738. var real____cxx_global_var_init_5_9867 = asm["___cxx_global_var_init_5_9867"];
  21739. asm["___cxx_global_var_init_5_9867"] = (function() {
  21740. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21741. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21742. return real____cxx_global_var_init_5_9867.apply(null, arguments);
  21743. });
  21744. var real____cxx_global_var_init_60 = asm["___cxx_global_var_init_60"];
  21745. asm["___cxx_global_var_init_60"] = (function() {
  21746. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21747. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21748. return real____cxx_global_var_init_60.apply(null, arguments);
  21749. });
  21750. var real____cxx_global_var_init_60_4840 = asm["___cxx_global_var_init_60_4840"];
  21751. asm["___cxx_global_var_init_60_4840"] = (function() {
  21752. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21753. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21754. return real____cxx_global_var_init_60_4840.apply(null, arguments);
  21755. });
  21756. var real____cxx_global_var_init_60_9712 = asm["___cxx_global_var_init_60_9712"];
  21757. asm["___cxx_global_var_init_60_9712"] = (function() {
  21758. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21759. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21760. return real____cxx_global_var_init_60_9712.apply(null, arguments);
  21761. });
  21762. var real____cxx_global_var_init_61 = asm["___cxx_global_var_init_61"];
  21763. asm["___cxx_global_var_init_61"] = (function() {
  21764. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21765. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21766. return real____cxx_global_var_init_61.apply(null, arguments);
  21767. });
  21768. var real____cxx_global_var_init_61_9713 = asm["___cxx_global_var_init_61_9713"];
  21769. asm["___cxx_global_var_init_61_9713"] = (function() {
  21770. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21771. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21772. return real____cxx_global_var_init_61_9713.apply(null, arguments);
  21773. });
  21774. var real____cxx_global_var_init_63 = asm["___cxx_global_var_init_63"];
  21775. asm["___cxx_global_var_init_63"] = (function() {
  21776. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21777. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21778. return real____cxx_global_var_init_63.apply(null, arguments);
  21779. });
  21780. var real____cxx_global_var_init_67 = asm["___cxx_global_var_init_67"];
  21781. asm["___cxx_global_var_init_67"] = (function() {
  21782. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21783. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21784. return real____cxx_global_var_init_67.apply(null, arguments);
  21785. });
  21786. var real____cxx_global_var_init_6_4577 = asm["___cxx_global_var_init_6_4577"];
  21787. asm["___cxx_global_var_init_6_4577"] = (function() {
  21788. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21789. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21790. return real____cxx_global_var_init_6_4577.apply(null, arguments);
  21791. });
  21792. var real____cxx_global_var_init_6_748 = asm["___cxx_global_var_init_6_748"];
  21793. asm["___cxx_global_var_init_6_748"] = (function() {
  21794. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21795. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21796. return real____cxx_global_var_init_6_748.apply(null, arguments);
  21797. });
  21798. var real____cxx_global_var_init_6_9868 = asm["___cxx_global_var_init_6_9868"];
  21799. asm["___cxx_global_var_init_6_9868"] = (function() {
  21800. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21801. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21802. return real____cxx_global_var_init_6_9868.apply(null, arguments);
  21803. });
  21804. var real____cxx_global_var_init_7 = asm["___cxx_global_var_init_7"];
  21805. asm["___cxx_global_var_init_7"] = (function() {
  21806. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21807. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21808. return real____cxx_global_var_init_7.apply(null, arguments);
  21809. });
  21810. var real____cxx_global_var_init_71 = asm["___cxx_global_var_init_71"];
  21811. asm["___cxx_global_var_init_71"] = (function() {
  21812. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21813. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21814. return real____cxx_global_var_init_71.apply(null, arguments);
  21815. });
  21816. var real____cxx_global_var_init_78 = asm["___cxx_global_var_init_78"];
  21817. asm["___cxx_global_var_init_78"] = (function() {
  21818. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21819. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21820. return real____cxx_global_var_init_78.apply(null, arguments);
  21821. });
  21822. var real____cxx_global_var_init_79 = asm["___cxx_global_var_init_79"];
  21823. asm["___cxx_global_var_init_79"] = (function() {
  21824. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21825. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21826. return real____cxx_global_var_init_79.apply(null, arguments);
  21827. });
  21828. var real____cxx_global_var_init_7_1313 = asm["___cxx_global_var_init_7_1313"];
  21829. asm["___cxx_global_var_init_7_1313"] = (function() {
  21830. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21831. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21832. return real____cxx_global_var_init_7_1313.apply(null, arguments);
  21833. });
  21834. var real____cxx_global_var_init_7_4578 = asm["___cxx_global_var_init_7_4578"];
  21835. asm["___cxx_global_var_init_7_4578"] = (function() {
  21836. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21837. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21838. return real____cxx_global_var_init_7_4578.apply(null, arguments);
  21839. });
  21840. var real____cxx_global_var_init_7_9869 = asm["___cxx_global_var_init_7_9869"];
  21841. asm["___cxx_global_var_init_7_9869"] = (function() {
  21842. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21843. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21844. return real____cxx_global_var_init_7_9869.apply(null, arguments);
  21845. });
  21846. var real____cxx_global_var_init_8552 = asm["___cxx_global_var_init_8552"];
  21847. asm["___cxx_global_var_init_8552"] = (function() {
  21848. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21849. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21850. return real____cxx_global_var_init_8552.apply(null, arguments);
  21851. });
  21852. var real____cxx_global_var_init_86 = asm["___cxx_global_var_init_86"];
  21853. asm["___cxx_global_var_init_86"] = (function() {
  21854. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21855. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21856. return real____cxx_global_var_init_86.apply(null, arguments);
  21857. });
  21858. var real____cxx_global_var_init_87 = asm["___cxx_global_var_init_87"];
  21859. asm["___cxx_global_var_init_87"] = (function() {
  21860. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21861. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21862. return real____cxx_global_var_init_87.apply(null, arguments);
  21863. });
  21864. var real____cxx_global_var_init_88 = asm["___cxx_global_var_init_88"];
  21865. asm["___cxx_global_var_init_88"] = (function() {
  21866. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21867. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21868. return real____cxx_global_var_init_88.apply(null, arguments);
  21869. });
  21870. var real____cxx_global_var_init_88_8675 = asm["___cxx_global_var_init_88_8675"];
  21871. asm["___cxx_global_var_init_88_8675"] = (function() {
  21872. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21873. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21874. return real____cxx_global_var_init_88_8675.apply(null, arguments);
  21875. });
  21876. var real____cxx_global_var_init_8_4579 = asm["___cxx_global_var_init_8_4579"];
  21877. asm["___cxx_global_var_init_8_4579"] = (function() {
  21878. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21879. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21880. return real____cxx_global_var_init_8_4579.apply(null, arguments);
  21881. });
  21882. var real____cxx_global_var_init_8_7080 = asm["___cxx_global_var_init_8_7080"];
  21883. asm["___cxx_global_var_init_8_7080"] = (function() {
  21884. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21885. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21886. return real____cxx_global_var_init_8_7080.apply(null, arguments);
  21887. });
  21888. var real____cxx_global_var_init_8_9870 = asm["___cxx_global_var_init_8_9870"];
  21889. asm["___cxx_global_var_init_8_9870"] = (function() {
  21890. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21891. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21892. return real____cxx_global_var_init_8_9870.apply(null, arguments);
  21893. });
  21894. var real____cxx_global_var_init_91 = asm["___cxx_global_var_init_91"];
  21895. asm["___cxx_global_var_init_91"] = (function() {
  21896. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21897. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21898. return real____cxx_global_var_init_91.apply(null, arguments);
  21899. });
  21900. var real____cxx_global_var_init_92 = asm["___cxx_global_var_init_92"];
  21901. asm["___cxx_global_var_init_92"] = (function() {
  21902. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21903. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21904. return real____cxx_global_var_init_92.apply(null, arguments);
  21905. });
  21906. var real____cxx_global_var_init_92_6304 = asm["___cxx_global_var_init_92_6304"];
  21907. asm["___cxx_global_var_init_92_6304"] = (function() {
  21908. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21909. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21910. return real____cxx_global_var_init_92_6304.apply(null, arguments);
  21911. });
  21912. var real____cxx_global_var_init_93 = asm["___cxx_global_var_init_93"];
  21913. asm["___cxx_global_var_init_93"] = (function() {
  21914. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21915. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21916. return real____cxx_global_var_init_93.apply(null, arguments);
  21917. });
  21918. var real____cxx_global_var_init_93_6305 = asm["___cxx_global_var_init_93_6305"];
  21919. asm["___cxx_global_var_init_93_6305"] = (function() {
  21920. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21921. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21922. return real____cxx_global_var_init_93_6305.apply(null, arguments);
  21923. });
  21924. var real____cxx_global_var_init_94 = asm["___cxx_global_var_init_94"];
  21925. asm["___cxx_global_var_init_94"] = (function() {
  21926. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21927. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21928. return real____cxx_global_var_init_94.apply(null, arguments);
  21929. });
  21930. var real____cxx_global_var_init_94_6306 = asm["___cxx_global_var_init_94_6306"];
  21931. asm["___cxx_global_var_init_94_6306"] = (function() {
  21932. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21933. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21934. return real____cxx_global_var_init_94_6306.apply(null, arguments);
  21935. });
  21936. var real____cxx_global_var_init_95 = asm["___cxx_global_var_init_95"];
  21937. asm["___cxx_global_var_init_95"] = (function() {
  21938. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21939. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21940. return real____cxx_global_var_init_95.apply(null, arguments);
  21941. });
  21942. var real____cxx_global_var_init_9_4580 = asm["___cxx_global_var_init_9_4580"];
  21943. asm["___cxx_global_var_init_9_4580"] = (function() {
  21944. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21945. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21946. return real____cxx_global_var_init_9_4580.apply(null, arguments);
  21947. });
  21948. var real____cxx_global_var_init_9_9871 = asm["___cxx_global_var_init_9_9871"];
  21949. asm["___cxx_global_var_init_9_9871"] = (function() {
  21950. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21951. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21952. return real____cxx_global_var_init_9_9871.apply(null, arguments);
  21953. });
  21954. var real____emscripten_environ_constructor = asm["___emscripten_environ_constructor"];
  21955. asm["___emscripten_environ_constructor"] = (function() {
  21956. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21957. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21958. return real____emscripten_environ_constructor.apply(null, arguments);
  21959. });
  21960. var real____errno_location = asm["___errno_location"];
  21961. asm["___errno_location"] = (function() {
  21962. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21963. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21964. return real____errno_location.apply(null, arguments);
  21965. });
  21966. var real___get_daylight = asm["__get_daylight"];
  21967. asm["__get_daylight"] = (function() {
  21968. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21969. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21970. return real___get_daylight.apply(null, arguments);
  21971. });
  21972. var real___get_environ = asm["__get_environ"];
  21973. asm["__get_environ"] = (function() {
  21974. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21975. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21976. return real___get_environ.apply(null, arguments);
  21977. });
  21978. var real___get_timezone = asm["__get_timezone"];
  21979. asm["__get_timezone"] = (function() {
  21980. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21981. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21982. return real___get_timezone.apply(null, arguments);
  21983. });
  21984. var real___get_tzname = asm["__get_tzname"];
  21985. asm["__get_tzname"] = (function() {
  21986. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21987. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21988. return real___get_tzname.apply(null, arguments);
  21989. });
  21990. var real__fflush = asm["_fflush"];
  21991. asm["_fflush"] = (function() {
  21992. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21993. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21994. return real__fflush.apply(null, arguments);
  21995. });
  21996. var real__free = asm["_free"];
  21997. asm["_free"] = (function() {
  21998. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21999. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22000. return real__free.apply(null, arguments);
  22001. });
  22002. var real__htonl = asm["_htonl"];
  22003. asm["_htonl"] = (function() {
  22004. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22005. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22006. return real__htonl.apply(null, arguments);
  22007. });
  22008. var real__htons = asm["_htons"];
  22009. asm["_htons"] = (function() {
  22010. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22011. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22012. return real__htons.apply(null, arguments);
  22013. });
  22014. var real__i64Add = asm["_i64Add"];
  22015. asm["_i64Add"] = (function() {
  22016. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22017. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22018. return real__i64Add.apply(null, arguments);
  22019. });
  22020. var real__llvm_bswap_i16 = asm["_llvm_bswap_i16"];
  22021. asm["_llvm_bswap_i16"] = (function() {
  22022. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22023. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22024. return real__llvm_bswap_i16.apply(null, arguments);
  22025. });
  22026. var real__llvm_bswap_i32 = asm["_llvm_bswap_i32"];
  22027. asm["_llvm_bswap_i32"] = (function() {
  22028. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22029. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22030. return real__llvm_bswap_i32.apply(null, arguments);
  22031. });
  22032. var real__llvm_ctlz_i64 = asm["_llvm_ctlz_i64"];
  22033. asm["_llvm_ctlz_i64"] = (function() {
  22034. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22035. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22036. return real__llvm_ctlz_i64.apply(null, arguments);
  22037. });
  22038. var real__llvm_ctpop_i32 = asm["_llvm_ctpop_i32"];
  22039. asm["_llvm_ctpop_i32"] = (function() {
  22040. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22041. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22042. return real__llvm_ctpop_i32.apply(null, arguments);
  22043. });
  22044. var real__llvm_maxnum_f32 = asm["_llvm_maxnum_f32"];
  22045. asm["_llvm_maxnum_f32"] = (function() {
  22046. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22047. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22048. return real__llvm_maxnum_f32.apply(null, arguments);
  22049. });
  22050. var real__llvm_maxnum_f64 = asm["_llvm_maxnum_f64"];
  22051. asm["_llvm_maxnum_f64"] = (function() {
  22052. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22053. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22054. return real__llvm_maxnum_f64.apply(null, arguments);
  22055. });
  22056. var real__llvm_minnum_f32 = asm["_llvm_minnum_f32"];
  22057. asm["_llvm_minnum_f32"] = (function() {
  22058. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22059. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22060. return real__llvm_minnum_f32.apply(null, arguments);
  22061. });
  22062. var real__llvm_round_f32 = asm["_llvm_round_f32"];
  22063. asm["_llvm_round_f32"] = (function() {
  22064. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22065. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22066. return real__llvm_round_f32.apply(null, arguments);
  22067. });
  22068. var real__main = asm["_main"];
  22069. asm["_main"] = (function() {
  22070. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22071. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22072. return real__main.apply(null, arguments);
  22073. });
  22074. var real__malloc = asm["_malloc"];
  22075. asm["_malloc"] = (function() {
  22076. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22077. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22078. return real__malloc.apply(null, arguments);
  22079. });
  22080. var real__memalign = asm["_memalign"];
  22081. asm["_memalign"] = (function() {
  22082. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22083. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22084. return real__memalign.apply(null, arguments);
  22085. });
  22086. var real__memmove = asm["_memmove"];
  22087. asm["_memmove"] = (function() {
  22088. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22089. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22090. return real__memmove.apply(null, arguments);
  22091. });
  22092. var real__ntohs = asm["_ntohs"];
  22093. asm["_ntohs"] = (function() {
  22094. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22095. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22096. return real__ntohs.apply(null, arguments);
  22097. });
  22098. var real__pthread_cond_broadcast = asm["_pthread_cond_broadcast"];
  22099. asm["_pthread_cond_broadcast"] = (function() {
  22100. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22101. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22102. return real__pthread_cond_broadcast.apply(null, arguments);
  22103. });
  22104. var real__pthread_mutex_lock = asm["_pthread_mutex_lock"];
  22105. asm["_pthread_mutex_lock"] = (function() {
  22106. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22107. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22108. return real__pthread_mutex_lock.apply(null, arguments);
  22109. });
  22110. var real__pthread_mutex_unlock = asm["_pthread_mutex_unlock"];
  22111. asm["_pthread_mutex_unlock"] = (function() {
  22112. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22113. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22114. return real__pthread_mutex_unlock.apply(null, arguments);
  22115. });
  22116. var real__realloc = asm["_realloc"];
  22117. asm["_realloc"] = (function() {
  22118. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22119. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22120. return real__realloc.apply(null, arguments);
  22121. });
  22122. var real__sbrk = asm["_sbrk"];
  22123. asm["_sbrk"] = (function() {
  22124. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22125. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22126. return real__sbrk.apply(null, arguments);
  22127. });
  22128. var real__strlen = asm["_strlen"];
  22129. asm["_strlen"] = (function() {
  22130. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22131. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22132. return real__strlen.apply(null, arguments);
  22133. });
  22134. var real_establishStackSpace = asm["establishStackSpace"];
  22135. asm["establishStackSpace"] = (function() {
  22136. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22137. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22138. return real_establishStackSpace.apply(null, arguments);
  22139. });
  22140. var real_getTempRet0 = asm["getTempRet0"];
  22141. asm["getTempRet0"] = (function() {
  22142. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22143. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22144. return real_getTempRet0.apply(null, arguments);
  22145. });
  22146. var real_setTempRet0 = asm["setTempRet0"];
  22147. asm["setTempRet0"] = (function() {
  22148. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22149. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22150. return real_setTempRet0.apply(null, arguments);
  22151. });
  22152. var real_setThrew = asm["setThrew"];
  22153. asm["setThrew"] = (function() {
  22154. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22155. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22156. return real_setThrew.apply(null, arguments);
  22157. });
  22158. var real_stackAlloc = asm["stackAlloc"];
  22159. asm["stackAlloc"] = (function() {
  22160. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22161. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22162. return real_stackAlloc.apply(null, arguments);
  22163. });
  22164. var real_stackRestore = asm["stackRestore"];
  22165. asm["stackRestore"] = (function() {
  22166. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22167. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22168. return real_stackRestore.apply(null, arguments);
  22169. });
  22170. var real_stackSave = asm["stackSave"];
  22171. asm["stackSave"] = (function() {
  22172. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22173. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22174. return real_stackSave.apply(null, arguments);
  22175. });
  22176. Module["asm"] = asm;
  22177. var _InjectProfilerSample = Module["_InjectProfilerSample"] = (function() {
  22178. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22179. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22180. return Module["asm"]["_InjectProfilerSample"].apply(null, arguments);
  22181. });
  22182. var _SendMessage = Module["_SendMessage"] = (function() {
  22183. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22184. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22185. return Module["asm"]["_SendMessage"].apply(null, arguments);
  22186. });
  22187. var _SendMessageFloat = Module["_SendMessageFloat"] = (function() {
  22188. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22189. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22190. return Module["asm"]["_SendMessageFloat"].apply(null, arguments);
  22191. });
  22192. var _SendMessageString = Module["_SendMessageString"] = (function() {
  22193. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22194. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22195. return Module["asm"]["_SendMessageString"].apply(null, arguments);
  22196. });
  22197. var _SetFullscreen = Module["_SetFullscreen"] = (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 Module["asm"]["_SetFullscreen"].apply(null, arguments);
  22201. });
  22202. var __GLOBAL__sub_I_AIBindings_gen_cpp = Module["__GLOBAL__sub_I_AIBindings_gen_cpp"] = (function() {
  22203. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22204. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22205. return Module["asm"]["__GLOBAL__sub_I_AIBindings_gen_cpp"].apply(null, arguments);
  22206. });
  22207. var __GLOBAL__sub_I_AIScriptingClasses_cpp = Module["__GLOBAL__sub_I_AIScriptingClasses_cpp"] = (function() {
  22208. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22209. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22210. return Module["asm"]["__GLOBAL__sub_I_AIScriptingClasses_cpp"].apply(null, arguments);
  22211. });
  22212. var __GLOBAL__sub_I_AccessibilityScriptingClasses_cpp = Module["__GLOBAL__sub_I_AccessibilityScriptingClasses_cpp"] = (function() {
  22213. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22214. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22215. return Module["asm"]["__GLOBAL__sub_I_AccessibilityScriptingClasses_cpp"].apply(null, arguments);
  22216. });
  22217. var __GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp = Module["__GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp"] = (function() {
  22218. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22219. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22220. return Module["asm"]["__GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp"].apply(null, arguments);
  22221. });
  22222. var __GLOBAL__sub_I_AnimationBindings_gen_cpp = Module["__GLOBAL__sub_I_AnimationBindings_gen_cpp"] = (function() {
  22223. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22224. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22225. return Module["asm"]["__GLOBAL__sub_I_AnimationBindings_gen_cpp"].apply(null, arguments);
  22226. });
  22227. var __GLOBAL__sub_I_AnimationClip_cpp = Module["__GLOBAL__sub_I_AnimationClip_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 Module["asm"]["__GLOBAL__sub_I_AnimationClip_cpp"].apply(null, arguments);
  22231. });
  22232. var __GLOBAL__sub_I_AnimationScriptingClasses_cpp = Module["__GLOBAL__sub_I_AnimationScriptingClasses_cpp"] = (function() {
  22233. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22234. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22235. return Module["asm"]["__GLOBAL__sub_I_AnimationScriptingClasses_cpp"].apply(null, arguments);
  22236. });
  22237. var __GLOBAL__sub_I_AssetBundleFileSystem_cpp = Module["__GLOBAL__sub_I_AssetBundleFileSystem_cpp"] = (function() {
  22238. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22239. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22240. return Module["asm"]["__GLOBAL__sub_I_AssetBundleFileSystem_cpp"].apply(null, arguments);
  22241. });
  22242. var __GLOBAL__sub_I_AssetBundleScriptingClasses_cpp = Module["__GLOBAL__sub_I_AssetBundleScriptingClasses_cpp"] = (function() {
  22243. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22244. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22245. return Module["asm"]["__GLOBAL__sub_I_AssetBundleScriptingClasses_cpp"].apply(null, arguments);
  22246. });
  22247. var __GLOBAL__sub_I_AudioScriptingClasses_cpp = Module["__GLOBAL__sub_I_AudioScriptingClasses_cpp"] = (function() {
  22248. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22249. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22250. return Module["asm"]["__GLOBAL__sub_I_AudioScriptingClasses_cpp"].apply(null, arguments);
  22251. });
  22252. var __GLOBAL__sub_I_ClothScriptingClasses_cpp = Module["__GLOBAL__sub_I_ClothScriptingClasses_cpp"] = (function() {
  22253. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22254. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22255. return Module["asm"]["__GLOBAL__sub_I_ClothScriptingClasses_cpp"].apply(null, arguments);
  22256. });
  22257. var __GLOBAL__sub_I_CloudFoundationScriptingClasses_cpp = Module["__GLOBAL__sub_I_CloudFoundationScriptingClasses_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 Module["asm"]["__GLOBAL__sub_I_CloudFoundationScriptingClasses_cpp"].apply(null, arguments);
  22261. });
  22262. var __GLOBAL__sub_I_ConstraintJob_cpp = Module["__GLOBAL__sub_I_ConstraintJob_cpp"] = (function() {
  22263. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22264. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22265. return Module["asm"]["__GLOBAL__sub_I_ConstraintJob_cpp"].apply(null, arguments);
  22266. });
  22267. var __GLOBAL__sub_I_CoreBindings_gen_cpp = Module["__GLOBAL__sub_I_CoreBindings_gen_cpp"] = (function() {
  22268. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22269. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22270. return Module["asm"]["__GLOBAL__sub_I_CoreBindings_gen_cpp"].apply(null, arguments);
  22271. });
  22272. var __GLOBAL__sub_I_DSPGraphBindings_gen_cpp = Module["__GLOBAL__sub_I_DSPGraphBindings_gen_cpp"] = (function() {
  22273. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22274. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22275. return Module["asm"]["__GLOBAL__sub_I_DSPGraphBindings_gen_cpp"].apply(null, arguments);
  22276. });
  22277. var __GLOBAL__sub_I_DirectorScriptingClasses_cpp = Module["__GLOBAL__sub_I_DirectorScriptingClasses_cpp"] = (function() {
  22278. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22279. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22280. return Module["asm"]["__GLOBAL__sub_I_DirectorScriptingClasses_cpp"].apply(null, arguments);
  22281. });
  22282. var __GLOBAL__sub_I_ExternalForcesModule_cpp = Module["__GLOBAL__sub_I_ExternalForcesModule_cpp"] = (function() {
  22283. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22284. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22285. return Module["asm"]["__GLOBAL__sub_I_ExternalForcesModule_cpp"].apply(null, arguments);
  22286. });
  22287. var __GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_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 Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp"].apply(null, arguments);
  22291. });
  22292. var __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp"] = (function() {
  22293. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22294. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22295. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp"].apply(null, arguments);
  22296. });
  22297. var __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp"] = (function() {
  22298. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22299. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22300. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp"].apply(null, arguments);
  22301. });
  22302. var __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp"] = (function() {
  22303. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22304. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22305. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp"].apply(null, arguments);
  22306. });
  22307. var __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp"] = (function() {
  22308. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22309. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22310. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp"].apply(null, arguments);
  22311. });
  22312. var __GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp = Module["__GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp"] = (function() {
  22313. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22314. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22315. return Module["asm"]["__GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp"].apply(null, arguments);
  22316. });
  22317. var __GLOBAL__sub_I_External_Yoga_Yoga_0_cpp = Module["__GLOBAL__sub_I_External_Yoga_Yoga_0_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 Module["asm"]["__GLOBAL__sub_I_External_Yoga_Yoga_0_cpp"].apply(null, arguments);
  22321. });
  22322. var __GLOBAL__sub_I_External_il2cpp_builds_external_baselib_Platforms_WebGL_Source_0_cpp = Module["__GLOBAL__sub_I_External_il2cpp_builds_external_baselib_Platforms_WebGL_Source_0_cpp"] = (function() {
  22323. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22324. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22325. return Module["asm"]["__GLOBAL__sub_I_External_il2cpp_builds_external_baselib_Platforms_WebGL_Source_0_cpp"].apply(null, arguments);
  22326. });
  22327. var __GLOBAL__sub_I_GUITexture_cpp = Module["__GLOBAL__sub_I_GUITexture_cpp"] = (function() {
  22328. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22329. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22330. return Module["asm"]["__GLOBAL__sub_I_GUITexture_cpp"].apply(null, arguments);
  22331. });
  22332. var __GLOBAL__sub_I_GfxDeviceNull_cpp = Module["__GLOBAL__sub_I_GfxDeviceNull_cpp"] = (function() {
  22333. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22334. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22335. return Module["asm"]["__GLOBAL__sub_I_GfxDeviceNull_cpp"].apply(null, arguments);
  22336. });
  22337. var __GLOBAL__sub_I_GridScriptingClasses_cpp = Module["__GLOBAL__sub_I_GridScriptingClasses_cpp"] = (function() {
  22338. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22339. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22340. return Module["asm"]["__GLOBAL__sub_I_GridScriptingClasses_cpp"].apply(null, arguments);
  22341. });
  22342. var __GLOBAL__sub_I_IMGUIScriptingClasses_cpp = Module["__GLOBAL__sub_I_IMGUIScriptingClasses_cpp"] = (function() {
  22343. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22344. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22345. return Module["asm"]["__GLOBAL__sub_I_IMGUIScriptingClasses_cpp"].apply(null, arguments);
  22346. });
  22347. var __GLOBAL__sub_I_InputLegacyModuleRegistration_cpp = Module["__GLOBAL__sub_I_InputLegacyModuleRegistration_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 Module["asm"]["__GLOBAL__sub_I_InputLegacyModuleRegistration_cpp"].apply(null, arguments);
  22351. });
  22352. var __GLOBAL__sub_I_InputLegacyScriptingClasses_cpp = Module["__GLOBAL__sub_I_InputLegacyScriptingClasses_cpp"] = (function() {
  22353. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22354. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22355. return Module["asm"]["__GLOBAL__sub_I_InputLegacyScriptingClasses_cpp"].apply(null, arguments);
  22356. });
  22357. var __GLOBAL__sub_I_InputScriptingClasses_cpp = Module["__GLOBAL__sub_I_InputScriptingClasses_cpp"] = (function() {
  22358. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22359. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22360. return Module["asm"]["__GLOBAL__sub_I_InputScriptingClasses_cpp"].apply(null, arguments);
  22361. });
  22362. var __GLOBAL__sub_I_LineRenderer_cpp = Module["__GLOBAL__sub_I_LineRenderer_cpp"] = (function() {
  22363. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22364. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22365. return Module["asm"]["__GLOBAL__sub_I_LineRenderer_cpp"].apply(null, arguments);
  22366. });
  22367. var __GLOBAL__sub_I_LogAssert_cpp = Module["__GLOBAL__sub_I_LogAssert_cpp"] = (function() {
  22368. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22369. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22370. return Module["asm"]["__GLOBAL__sub_I_LogAssert_cpp"].apply(null, arguments);
  22371. });
  22372. var __GLOBAL__sub_I_Lump_libil2cpp_gc_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_gc_cpp"] = (function() {
  22373. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22374. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22375. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_gc_cpp"].apply(null, arguments);
  22376. });
  22377. var __GLOBAL__sub_I_Lump_libil2cpp_icalls_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_icalls_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 Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_icalls_cpp"].apply(null, arguments);
  22381. });
  22382. var __GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp"] = (function() {
  22383. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22384. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22385. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp"].apply(null, arguments);
  22386. });
  22387. var __GLOBAL__sub_I_Lump_libil2cpp_mono_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_mono_cpp"] = (function() {
  22388. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22389. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22390. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_mono_cpp"].apply(null, arguments);
  22391. });
  22392. var __GLOBAL__sub_I_Lump_libil2cpp_os_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_os_cpp"] = (function() {
  22393. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22394. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22395. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_os_cpp"].apply(null, arguments);
  22396. });
  22397. var __GLOBAL__sub_I_Lump_libil2cpp_utils_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_utils_cpp"] = (function() {
  22398. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22399. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22400. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_utils_cpp"].apply(null, arguments);
  22401. });
  22402. var __GLOBAL__sub_I_Lump_libil2cpp_vm_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_vm_cpp"] = (function() {
  22403. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22404. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22405. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_vm_cpp"].apply(null, arguments);
  22406. });
  22407. var __GLOBAL__sub_I_Lump_libil2cpp_vm_utils_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_vm_utils_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 Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_vm_utils_cpp"].apply(null, arguments);
  22411. });
  22412. var __GLOBAL__sub_I_Mesh_cpp = Module["__GLOBAL__sub_I_Mesh_cpp"] = (function() {
  22413. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22414. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22415. return Module["asm"]["__GLOBAL__sub_I_Mesh_cpp"].apply(null, arguments);
  22416. });
  22417. var __GLOBAL__sub_I_Modules_AI_1_cpp = Module["__GLOBAL__sub_I_Modules_AI_1_cpp"] = (function() {
  22418. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22419. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22420. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_1_cpp"].apply(null, arguments);
  22421. });
  22422. var __GLOBAL__sub_I_Modules_AI_Builder_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_Builder_0_cpp"] = (function() {
  22423. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22424. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22425. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_Builder_0_cpp"].apply(null, arguments);
  22426. });
  22427. var __GLOBAL__sub_I_Modules_AI_Crowd_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_Crowd_0_cpp"] = (function() {
  22428. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22429. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22430. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_Crowd_0_cpp"].apply(null, arguments);
  22431. });
  22432. var __GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp"] = (function() {
  22433. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22434. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22435. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp"].apply(null, arguments);
  22436. });
  22437. var __GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_Obstacles_0_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 Module["asm"]["__GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp"].apply(null, arguments);
  22441. });
  22442. var __GLOBAL__sub_I_Modules_Animation_0_cpp = Module["__GLOBAL__sub_I_Modules_Animation_0_cpp"] = (function() {
  22443. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22444. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22445. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_0_cpp"].apply(null, arguments);
  22446. });
  22447. var __GLOBAL__sub_I_Modules_Animation_2_cpp = Module["__GLOBAL__sub_I_Modules_Animation_2_cpp"] = (function() {
  22448. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22449. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22450. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_2_cpp"].apply(null, arguments);
  22451. });
  22452. var __GLOBAL__sub_I_Modules_Animation_3_cpp = Module["__GLOBAL__sub_I_Modules_Animation_3_cpp"] = (function() {
  22453. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22454. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22455. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_3_cpp"].apply(null, arguments);
  22456. });
  22457. var __GLOBAL__sub_I_Modules_Animation_4_cpp = Module["__GLOBAL__sub_I_Modules_Animation_4_cpp"] = (function() {
  22458. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22459. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22460. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_4_cpp"].apply(null, arguments);
  22461. });
  22462. var __GLOBAL__sub_I_Modules_Animation_5_cpp = Module["__GLOBAL__sub_I_Modules_Animation_5_cpp"] = (function() {
  22463. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22464. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22465. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_5_cpp"].apply(null, arguments);
  22466. });
  22467. var __GLOBAL__sub_I_Modules_Animation_6_cpp = Module["__GLOBAL__sub_I_Modules_Animation_6_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 Module["asm"]["__GLOBAL__sub_I_Modules_Animation_6_cpp"].apply(null, arguments);
  22471. });
  22472. var __GLOBAL__sub_I_Modules_Animation_7_cpp = Module["__GLOBAL__sub_I_Modules_Animation_7_cpp"] = (function() {
  22473. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22474. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22475. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_7_cpp"].apply(null, arguments);
  22476. });
  22477. var __GLOBAL__sub_I_Modules_Animation_Constraints_0_cpp = Module["__GLOBAL__sub_I_Modules_Animation_Constraints_0_cpp"] = (function() {
  22478. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22479. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22480. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_Constraints_0_cpp"].apply(null, arguments);
  22481. });
  22482. var __GLOBAL__sub_I_Modules_Animation_Director_0_cpp = Module["__GLOBAL__sub_I_Modules_Animation_Director_0_cpp"] = (function() {
  22483. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22484. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22485. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_Director_0_cpp"].apply(null, arguments);
  22486. });
  22487. var __GLOBAL__sub_I_Modules_Animation_Director_1_cpp = Module["__GLOBAL__sub_I_Modules_Animation_Director_1_cpp"] = (function() {
  22488. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22489. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22490. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_Director_1_cpp"].apply(null, arguments);
  22491. });
  22492. var __GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp"] = (function() {
  22493. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22494. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22495. return Module["asm"]["__GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp"].apply(null, arguments);
  22496. });
  22497. var __GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_AssetBundle_Public_1_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 Module["asm"]["__GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp"].apply(null, arguments);
  22501. });
  22502. var __GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp = Module["__GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp"] = (function() {
  22503. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22504. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22505. return Module["asm"]["__GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp"].apply(null, arguments);
  22506. });
  22507. var __GLOBAL__sub_I_Modules_Audio_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_0_cpp"] = (function() {
  22508. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22509. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22510. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_0_cpp"].apply(null, arguments);
  22511. });
  22512. var __GLOBAL__sub_I_Modules_Audio_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_1_cpp"] = (function() {
  22513. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22514. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22515. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_1_cpp"].apply(null, arguments);
  22516. });
  22517. var __GLOBAL__sub_I_Modules_Audio_Public_3_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_3_cpp"] = (function() {
  22518. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22519. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22520. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_3_cpp"].apply(null, arguments);
  22521. });
  22522. var __GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp"] = (function() {
  22523. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22524. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22525. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp"].apply(null, arguments);
  22526. });
  22527. var __GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_sound_0_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 Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp"].apply(null, arguments);
  22531. });
  22532. var __GLOBAL__sub_I_Modules_Cloth_0_cpp = Module["__GLOBAL__sub_I_Modules_Cloth_0_cpp"] = (function() {
  22533. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22534. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22535. return Module["asm"]["__GLOBAL__sub_I_Modules_Cloth_0_cpp"].apply(null, arguments);
  22536. });
  22537. var __GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp"] = (function() {
  22538. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22539. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22540. return Module["asm"]["__GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp"].apply(null, arguments);
  22541. });
  22542. var __GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp"] = (function() {
  22543. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22544. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22545. return Module["asm"]["__GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp"].apply(null, arguments);
  22546. });
  22547. var __GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp"] = (function() {
  22548. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22549. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22550. return Module["asm"]["__GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp"].apply(null, arguments);
  22551. });
  22552. var __GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp = Module["__GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp"] = (function() {
  22553. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22554. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22555. return Module["asm"]["__GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp"].apply(null, arguments);
  22556. });
  22557. var __GLOBAL__sub_I_Modules_Grid_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Grid_Public_0_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 Module["asm"]["__GLOBAL__sub_I_Modules_Grid_Public_0_cpp"].apply(null, arguments);
  22561. });
  22562. var __GLOBAL__sub_I_Modules_IMGUI_0_cpp = Module["__GLOBAL__sub_I_Modules_IMGUI_0_cpp"] = (function() {
  22563. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22564. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22565. return Module["asm"]["__GLOBAL__sub_I_Modules_IMGUI_0_cpp"].apply(null, arguments);
  22566. });
  22567. var __GLOBAL__sub_I_Modules_IMGUI_1_cpp = Module["__GLOBAL__sub_I_Modules_IMGUI_1_cpp"] = (function() {
  22568. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22569. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22570. return Module["asm"]["__GLOBAL__sub_I_Modules_IMGUI_1_cpp"].apply(null, arguments);
  22571. });
  22572. var __GLOBAL__sub_I_Modules_Input_Private_0_cpp = Module["__GLOBAL__sub_I_Modules_Input_Private_0_cpp"] = (function() {
  22573. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22574. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22575. return Module["asm"]["__GLOBAL__sub_I_Modules_Input_Private_0_cpp"].apply(null, arguments);
  22576. });
  22577. var __GLOBAL__sub_I_Modules_ParticleSystem_0_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_0_cpp"] = (function() {
  22578. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22579. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22580. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_0_cpp"].apply(null, arguments);
  22581. });
  22582. var __GLOBAL__sub_I_Modules_ParticleSystem_1_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_1_cpp"] = (function() {
  22583. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22584. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22585. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_1_cpp"].apply(null, arguments);
  22586. });
  22587. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_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 Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp"].apply(null, arguments);
  22591. });
  22592. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp"] = (function() {
  22593. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22594. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22595. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp"].apply(null, arguments);
  22596. });
  22597. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp"] = (function() {
  22598. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22599. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22600. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp"].apply(null, arguments);
  22601. });
  22602. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp"] = (function() {
  22603. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22604. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22605. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp"].apply(null, arguments);
  22606. });
  22607. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp"] = (function() {
  22608. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22609. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22610. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp"].apply(null, arguments);
  22611. });
  22612. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp"] = (function() {
  22613. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22614. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22615. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp"].apply(null, arguments);
  22616. });
  22617. var __GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp = Module["__GLOBAL__sub_I_Modules_PerformanceReporting_0_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 Module["asm"]["__GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp"].apply(null, arguments);
  22621. });
  22622. var __GLOBAL__sub_I_Modules_Physics2D_0_cpp = Module["__GLOBAL__sub_I_Modules_Physics2D_0_cpp"] = (function() {
  22623. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22624. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22625. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics2D_0_cpp"].apply(null, arguments);
  22626. });
  22627. var __GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp"] = (function() {
  22628. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22629. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22630. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp"].apply(null, arguments);
  22631. });
  22632. var __GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp"] = (function() {
  22633. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22634. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22635. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp"].apply(null, arguments);
  22636. });
  22637. var __GLOBAL__sub_I_Modules_Physics_0_cpp = Module["__GLOBAL__sub_I_Modules_Physics_0_cpp"] = (function() {
  22638. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22639. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22640. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics_0_cpp"].apply(null, arguments);
  22641. });
  22642. var __GLOBAL__sub_I_Modules_Physics_2_cpp = Module["__GLOBAL__sub_I_Modules_Physics_2_cpp"] = (function() {
  22643. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22644. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22645. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics_2_cpp"].apply(null, arguments);
  22646. });
  22647. var __GLOBAL__sub_I_Modules_Physics_3_cpp = Module["__GLOBAL__sub_I_Modules_Physics_3_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 Module["asm"]["__GLOBAL__sub_I_Modules_Physics_3_cpp"].apply(null, arguments);
  22651. });
  22652. var __GLOBAL__sub_I_Modules_Physics_4_cpp = Module["__GLOBAL__sub_I_Modules_Physics_4_cpp"] = (function() {
  22653. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22654. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22655. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics_4_cpp"].apply(null, arguments);
  22656. });
  22657. var __GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp = Module["__GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp"] = (function() {
  22658. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22659. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22660. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp"].apply(null, arguments);
  22661. });
  22662. var __GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp"] = (function() {
  22663. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22664. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22665. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp"].apply(null, arguments);
  22666. });
  22667. var __GLOBAL__sub_I_Modules_Profiler_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Public_0_cpp"] = (function() {
  22668. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22669. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22670. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Public_0_cpp"].apply(null, arguments);
  22671. });
  22672. var __GLOBAL__sub_I_Modules_Profiler_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Public_1_cpp"] = (function() {
  22673. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22674. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22675. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Public_1_cpp"].apply(null, arguments);
  22676. });
  22677. var __GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Runtime_0_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 Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp"].apply(null, arguments);
  22681. });
  22682. var __GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp"] = (function() {
  22683. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22684. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22685. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp"].apply(null, arguments);
  22686. });
  22687. var __GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp"] = (function() {
  22688. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22689. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22690. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp"].apply(null, arguments);
  22691. });
  22692. var __GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp = Module["__GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp"] = (function() {
  22693. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22694. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22695. return Module["asm"]["__GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp"].apply(null, arguments);
  22696. });
  22697. var __GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp = Module["__GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp"] = (function() {
  22698. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22699. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22700. return Module["asm"]["__GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp"].apply(null, arguments);
  22701. });
  22702. var __GLOBAL__sub_I_Modules_Subsystems_0_cpp = Module["__GLOBAL__sub_I_Modules_Subsystems_0_cpp"] = (function() {
  22703. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22704. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22705. return Module["asm"]["__GLOBAL__sub_I_Modules_Subsystems_0_cpp"].apply(null, arguments);
  22706. });
  22707. var __GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp = Module["__GLOBAL__sub_I_Modules_TerrainPhysics_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 Module["asm"]["__GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp"].apply(null, arguments);
  22711. });
  22712. var __GLOBAL__sub_I_Modules_Terrain_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_Public_0_cpp"] = (function() {
  22713. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22714. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22715. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_Public_0_cpp"].apply(null, arguments);
  22716. });
  22717. var __GLOBAL__sub_I_Modules_Terrain_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_Public_1_cpp"] = (function() {
  22718. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22719. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22720. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_Public_1_cpp"].apply(null, arguments);
  22721. });
  22722. var __GLOBAL__sub_I_Modules_Terrain_Public_2_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_Public_2_cpp"] = (function() {
  22723. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22724. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22725. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_Public_2_cpp"].apply(null, arguments);
  22726. });
  22727. var __GLOBAL__sub_I_Modules_Terrain_Public_3_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_Public_3_cpp"] = (function() {
  22728. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22729. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22730. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_Public_3_cpp"].apply(null, arguments);
  22731. });
  22732. var __GLOBAL__sub_I_Modules_Terrain_VR_0_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_VR_0_cpp"] = (function() {
  22733. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22734. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22735. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_VR_0_cpp"].apply(null, arguments);
  22736. });
  22737. var __GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp = Module["__GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_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 Module["asm"]["__GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp"].apply(null, arguments);
  22741. });
  22742. var __GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp"] = (function() {
  22743. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22744. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22745. return Module["asm"]["__GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp"].apply(null, arguments);
  22746. });
  22747. var __GLOBAL__sub_I_Modules_Tilemap_0_cpp = Module["__GLOBAL__sub_I_Modules_Tilemap_0_cpp"] = (function() {
  22748. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22749. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22750. return Module["asm"]["__GLOBAL__sub_I_Modules_Tilemap_0_cpp"].apply(null, arguments);
  22751. });
  22752. var __GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp"] = (function() {
  22753. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22754. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22755. return Module["asm"]["__GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp"].apply(null, arguments);
  22756. });
  22757. var __GLOBAL__sub_I_Modules_UIElementsNative_0_cpp = Module["__GLOBAL__sub_I_Modules_UIElementsNative_0_cpp"] = (function() {
  22758. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22759. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22760. return Module["asm"]["__GLOBAL__sub_I_Modules_UIElementsNative_0_cpp"].apply(null, arguments);
  22761. });
  22762. var __GLOBAL__sub_I_Modules_UI_0_cpp = Module["__GLOBAL__sub_I_Modules_UI_0_cpp"] = (function() {
  22763. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22764. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22765. return Module["asm"]["__GLOBAL__sub_I_Modules_UI_0_cpp"].apply(null, arguments);
  22766. });
  22767. var __GLOBAL__sub_I_Modules_UI_1_cpp = Module["__GLOBAL__sub_I_Modules_UI_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 Module["asm"]["__GLOBAL__sub_I_Modules_UI_1_cpp"].apply(null, arguments);
  22771. });
  22772. var __GLOBAL__sub_I_Modules_UI_2_cpp = Module["__GLOBAL__sub_I_Modules_UI_2_cpp"] = (function() {
  22773. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22774. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22775. return Module["asm"]["__GLOBAL__sub_I_Modules_UI_2_cpp"].apply(null, arguments);
  22776. });
  22777. var __GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp = Module["__GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp"] = (function() {
  22778. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22779. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22780. return Module["asm"]["__GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp"].apply(null, arguments);
  22781. });
  22782. var __GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp"] = (function() {
  22783. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22784. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22785. return Module["asm"]["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp"].apply(null, arguments);
  22786. });
  22787. var __GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp = Module["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp"] = (function() {
  22788. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22789. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22790. return Module["asm"]["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp"].apply(null, arguments);
  22791. });
  22792. var __GLOBAL__sub_I_Modules_VFX_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_VFX_Public_0_cpp"] = (function() {
  22793. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22794. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22795. return Module["asm"]["__GLOBAL__sub_I_Modules_VFX_Public_0_cpp"].apply(null, arguments);
  22796. });
  22797. var __GLOBAL__sub_I_Modules_VFX_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_VFX_Public_1_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 Module["asm"]["__GLOBAL__sub_I_Modules_VFX_Public_1_cpp"].apply(null, arguments);
  22801. });
  22802. var __GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp = Module["__GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp"] = (function() {
  22803. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22804. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22805. return Module["asm"]["__GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp"].apply(null, arguments);
  22806. });
  22807. var __GLOBAL__sub_I_Modules_VR_0_cpp = Module["__GLOBAL__sub_I_Modules_VR_0_cpp"] = (function() {
  22808. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22809. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22810. return Module["asm"]["__GLOBAL__sub_I_Modules_VR_0_cpp"].apply(null, arguments);
  22811. });
  22812. var __GLOBAL__sub_I_Modules_VR_1_cpp = Module["__GLOBAL__sub_I_Modules_VR_1_cpp"] = (function() {
  22813. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22814. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22815. return Module["asm"]["__GLOBAL__sub_I_Modules_VR_1_cpp"].apply(null, arguments);
  22816. });
  22817. var __GLOBAL__sub_I_Modules_Vehicles_0_cpp = Module["__GLOBAL__sub_I_Modules_Vehicles_0_cpp"] = (function() {
  22818. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22819. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22820. return Module["asm"]["__GLOBAL__sub_I_Modules_Vehicles_0_cpp"].apply(null, arguments);
  22821. });
  22822. var __GLOBAL__sub_I_Modules_Video_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Video_Public_0_cpp"] = (function() {
  22823. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22824. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22825. return Module["asm"]["__GLOBAL__sub_I_Modules_Video_Public_0_cpp"].apply(null, arguments);
  22826. });
  22827. var __GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp = Module["__GLOBAL__sub_I_Modules_Video_Public_Base_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 Module["asm"]["__GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp"].apply(null, arguments);
  22831. });
  22832. var __GLOBAL__sub_I_Modules_XR_0_cpp = Module["__GLOBAL__sub_I_Modules_XR_0_cpp"] = (function() {
  22833. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22834. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22835. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_0_cpp"].apply(null, arguments);
  22836. });
  22837. var __GLOBAL__sub_I_Modules_XR_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_XR_Public_0_cpp"] = (function() {
  22838. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22839. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22840. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_Public_0_cpp"].apply(null, arguments);
  22841. });
  22842. var __GLOBAL__sub_I_Modules_XR_Stats_0_cpp = Module["__GLOBAL__sub_I_Modules_XR_Stats_0_cpp"] = (function() {
  22843. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22844. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22845. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_Stats_0_cpp"].apply(null, arguments);
  22846. });
  22847. var __GLOBAL__sub_I_Modules_XR_Subsystems_Display_0_cpp = Module["__GLOBAL__sub_I_Modules_XR_Subsystems_Display_0_cpp"] = (function() {
  22848. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22849. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22850. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_Subsystems_Display_0_cpp"].apply(null, arguments);
  22851. });
  22852. var __GLOBAL__sub_I_Modules_XR_Subsystems_Display_1_cpp = Module["__GLOBAL__sub_I_Modules_XR_Subsystems_Display_1_cpp"] = (function() {
  22853. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22854. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22855. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_Subsystems_Display_1_cpp"].apply(null, arguments);
  22856. });
  22857. var __GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_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 Module["asm"]["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_0_cpp"].apply(null, arguments);
  22861. });
  22862. var __GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp"] = (function() {
  22863. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22864. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22865. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp"].apply(null, arguments);
  22866. });
  22867. var __GLOBAL__sub_I_Modules_XR_Subsystems_Meshing_0_cpp = Module["__GLOBAL__sub_I_Modules_XR_Subsystems_Meshing_0_cpp"] = (function() {
  22868. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22869. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22870. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_Subsystems_Meshing_0_cpp"].apply(null, arguments);
  22871. });
  22872. var __GLOBAL__sub_I_Modules_XR_Tracing_0_cpp = Module["__GLOBAL__sub_I_Modules_XR_Tracing_0_cpp"] = (function() {
  22873. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22874. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22875. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_Tracing_0_cpp"].apply(null, arguments);
  22876. });
  22877. var __GLOBAL__sub_I_NoiseModule_cpp = Module["__GLOBAL__sub_I_NoiseModule_cpp"] = (function() {
  22878. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22879. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22880. return Module["asm"]["__GLOBAL__sub_I_NoiseModule_cpp"].apply(null, arguments);
  22881. });
  22882. var __GLOBAL__sub_I_ParticleSystemBindings_gen_cpp = Module["__GLOBAL__sub_I_ParticleSystemBindings_gen_cpp"] = (function() {
  22883. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22884. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22885. return Module["asm"]["__GLOBAL__sub_I_ParticleSystemBindings_gen_cpp"].apply(null, arguments);
  22886. });
  22887. var __GLOBAL__sub_I_ParticleSystemGeometryJob_cpp = Module["__GLOBAL__sub_I_ParticleSystemGeometryJob_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 Module["asm"]["__GLOBAL__sub_I_ParticleSystemGeometryJob_cpp"].apply(null, arguments);
  22891. });
  22892. var __GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp = Module["__GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp"] = (function() {
  22893. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22894. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22895. return Module["asm"]["__GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp"].apply(null, arguments);
  22896. });
  22897. var __GLOBAL__sub_I_Physics2DScriptingClasses_cpp = Module["__GLOBAL__sub_I_Physics2DScriptingClasses_cpp"] = (function() {
  22898. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22899. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22900. return Module["asm"]["__GLOBAL__sub_I_Physics2DScriptingClasses_cpp"].apply(null, arguments);
  22901. });
  22902. var __GLOBAL__sub_I_PhysicsBindings_gen_cpp = Module["__GLOBAL__sub_I_PhysicsBindings_gen_cpp"] = (function() {
  22903. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22904. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22905. return Module["asm"]["__GLOBAL__sub_I_PhysicsBindings_gen_cpp"].apply(null, arguments);
  22906. });
  22907. var __GLOBAL__sub_I_PhysicsQuery_cpp = Module["__GLOBAL__sub_I_PhysicsQuery_cpp"] = (function() {
  22908. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22909. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22910. return Module["asm"]["__GLOBAL__sub_I_PhysicsQuery_cpp"].apply(null, arguments);
  22911. });
  22912. var __GLOBAL__sub_I_PhysicsScene_cpp = Module["__GLOBAL__sub_I_PhysicsScene_cpp"] = (function() {
  22913. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22914. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22915. return Module["asm"]["__GLOBAL__sub_I_PhysicsScene_cpp"].apply(null, arguments);
  22916. });
  22917. var __GLOBAL__sub_I_PhysicsScriptingClasses_cpp = Module["__GLOBAL__sub_I_PhysicsScriptingClasses_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 Module["asm"]["__GLOBAL__sub_I_PhysicsScriptingClasses_cpp"].apply(null, arguments);
  22921. });
  22922. var __GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Source_0_cpp = Module["__GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Source_0_cpp"] = (function() {
  22923. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22924. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22925. return Module["asm"]["__GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Source_0_cpp"].apply(null, arguments);
  22926. });
  22927. var __GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp = Module["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp"] = (function() {
  22928. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22929. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22930. return Module["asm"]["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp"].apply(null, arguments);
  22931. });
  22932. var __GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp = Module["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp"] = (function() {
  22933. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22934. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22935. return Module["asm"]["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp"].apply(null, arguments);
  22936. });
  22937. var __GLOBAL__sub_I_PluginInterfaceVR_cpp = Module["__GLOBAL__sub_I_PluginInterfaceVR_cpp"] = (function() {
  22938. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22939. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22940. return Module["asm"]["__GLOBAL__sub_I_PluginInterfaceVR_cpp"].apply(null, arguments);
  22941. });
  22942. var __GLOBAL__sub_I_QualitySettings_cpp = Module["__GLOBAL__sub_I_QualitySettings_cpp"] = (function() {
  22943. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22944. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22945. return Module["asm"]["__GLOBAL__sub_I_QualitySettings_cpp"].apply(null, arguments);
  22946. });
  22947. var __GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp = Module["__GLOBAL__sub_I_Runtime_2D_Renderer_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 Module["asm"]["__GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp"].apply(null, arguments);
  22951. });
  22952. var __GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp = Module["__GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp"] = (function() {
  22953. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22954. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22955. return Module["asm"]["__GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp"].apply(null, arguments);
  22956. });
  22957. var __GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp = Module["__GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp"] = (function() {
  22958. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22959. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22960. return Module["asm"]["__GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp"].apply(null, arguments);
  22961. });
  22962. var __GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp = Module["__GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp"] = (function() {
  22963. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22964. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22965. return Module["asm"]["__GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp"].apply(null, arguments);
  22966. });
  22967. var __GLOBAL__sub_I_Runtime_Allocator_0_cpp = Module["__GLOBAL__sub_I_Runtime_Allocator_0_cpp"] = (function() {
  22968. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22969. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22970. return Module["asm"]["__GLOBAL__sub_I_Runtime_Allocator_0_cpp"].apply(null, arguments);
  22971. });
  22972. var __GLOBAL__sub_I_Runtime_Allocator_2_cpp = Module["__GLOBAL__sub_I_Runtime_Allocator_2_cpp"] = (function() {
  22973. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22974. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22975. return Module["asm"]["__GLOBAL__sub_I_Runtime_Allocator_2_cpp"].apply(null, arguments);
  22976. });
  22977. var __GLOBAL__sub_I_Runtime_Allocator_3_cpp = Module["__GLOBAL__sub_I_Runtime_Allocator_3_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 Module["asm"]["__GLOBAL__sub_I_Runtime_Allocator_3_cpp"].apply(null, arguments);
  22981. });
  22982. var __GLOBAL__sub_I_Runtime_Application_0_cpp = Module["__GLOBAL__sub_I_Runtime_Application_0_cpp"] = (function() {
  22983. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22984. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22985. return Module["asm"]["__GLOBAL__sub_I_Runtime_Application_0_cpp"].apply(null, arguments);
  22986. });
  22987. var __GLOBAL__sub_I_Runtime_BaseClasses_0_cpp = Module["__GLOBAL__sub_I_Runtime_BaseClasses_0_cpp"] = (function() {
  22988. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22989. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22990. return Module["asm"]["__GLOBAL__sub_I_Runtime_BaseClasses_0_cpp"].apply(null, arguments);
  22991. });
  22992. var __GLOBAL__sub_I_Runtime_BaseClasses_1_cpp = Module["__GLOBAL__sub_I_Runtime_BaseClasses_1_cpp"] = (function() {
  22993. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22994. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22995. return Module["asm"]["__GLOBAL__sub_I_Runtime_BaseClasses_1_cpp"].apply(null, arguments);
  22996. });
  22997. var __GLOBAL__sub_I_Runtime_BaseClasses_2_cpp = Module["__GLOBAL__sub_I_Runtime_BaseClasses_2_cpp"] = (function() {
  22998. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22999. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23000. return Module["asm"]["__GLOBAL__sub_I_Runtime_BaseClasses_2_cpp"].apply(null, arguments);
  23001. });
  23002. var __GLOBAL__sub_I_Runtime_BaseClasses_3_cpp = Module["__GLOBAL__sub_I_Runtime_BaseClasses_3_cpp"] = (function() {
  23003. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23004. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23005. return Module["asm"]["__GLOBAL__sub_I_Runtime_BaseClasses_3_cpp"].apply(null, arguments);
  23006. });
  23007. var __GLOBAL__sub_I_Runtime_Burst_0_cpp = Module["__GLOBAL__sub_I_Runtime_Burst_0_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 Module["asm"]["__GLOBAL__sub_I_Runtime_Burst_0_cpp"].apply(null, arguments);
  23011. });
  23012. var __GLOBAL__sub_I_Runtime_Camera_0_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_0_cpp"] = (function() {
  23013. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23014. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23015. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_0_cpp"].apply(null, arguments);
  23016. });
  23017. var __GLOBAL__sub_I_Runtime_Camera_1_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_1_cpp"] = (function() {
  23018. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23019. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23020. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_1_cpp"].apply(null, arguments);
  23021. });
  23022. var __GLOBAL__sub_I_Runtime_Camera_2_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_2_cpp"] = (function() {
  23023. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23024. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23025. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_2_cpp"].apply(null, arguments);
  23026. });
  23027. var __GLOBAL__sub_I_Runtime_Camera_3_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_3_cpp"] = (function() {
  23028. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23029. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23030. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_3_cpp"].apply(null, arguments);
  23031. });
  23032. var __GLOBAL__sub_I_Runtime_Camera_4_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_4_cpp"] = (function() {
  23033. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23034. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23035. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_4_cpp"].apply(null, arguments);
  23036. });
  23037. var __GLOBAL__sub_I_Runtime_Camera_5_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_5_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 Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_5_cpp"].apply(null, arguments);
  23041. });
  23042. var __GLOBAL__sub_I_Runtime_Camera_6_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_6_cpp"] = (function() {
  23043. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23044. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23045. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_6_cpp"].apply(null, arguments);
  23046. });
  23047. var __GLOBAL__sub_I_Runtime_Camera_7_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_7_cpp"] = (function() {
  23048. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23049. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23050. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_7_cpp"].apply(null, arguments);
  23051. });
  23052. var __GLOBAL__sub_I_Runtime_Camera_8_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_8_cpp"] = (function() {
  23053. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23054. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23055. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_8_cpp"].apply(null, arguments);
  23056. });
  23057. var __GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp"] = (function() {
  23058. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23059. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23060. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp"].apply(null, arguments);
  23061. });
  23062. var __GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp"] = (function() {
  23063. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23064. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23065. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp"].apply(null, arguments);
  23066. });
  23067. var __GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_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 Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp"].apply(null, arguments);
  23071. });
  23072. var __GLOBAL__sub_I_Runtime_Containers_0_cpp = Module["__GLOBAL__sub_I_Runtime_Containers_0_cpp"] = (function() {
  23073. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23074. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23075. return Module["asm"]["__GLOBAL__sub_I_Runtime_Containers_0_cpp"].apply(null, arguments);
  23076. });
  23077. var __GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp = Module["__GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp"] = (function() {
  23078. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23079. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23080. return Module["asm"]["__GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp"].apply(null, arguments);
  23081. });
  23082. var __GLOBAL__sub_I_Runtime_Director_Core_0_cpp = Module["__GLOBAL__sub_I_Runtime_Director_Core_0_cpp"] = (function() {
  23083. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23084. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23085. return Module["asm"]["__GLOBAL__sub_I_Runtime_Director_Core_0_cpp"].apply(null, arguments);
  23086. });
  23087. var __GLOBAL__sub_I_Runtime_Director_Core_1_cpp = Module["__GLOBAL__sub_I_Runtime_Director_Core_1_cpp"] = (function() {
  23088. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23089. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23090. return Module["asm"]["__GLOBAL__sub_I_Runtime_Director_Core_1_cpp"].apply(null, arguments);
  23091. });
  23092. var __GLOBAL__sub_I_Runtime_Export_Unsafe_0_cpp = Module["__GLOBAL__sub_I_Runtime_Export_Unsafe_0_cpp"] = (function() {
  23093. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23094. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23095. return Module["asm"]["__GLOBAL__sub_I_Runtime_Export_Unsafe_0_cpp"].apply(null, arguments);
  23096. });
  23097. var __GLOBAL__sub_I_Runtime_File_0_cpp = Module["__GLOBAL__sub_I_Runtime_File_0_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 Module["asm"]["__GLOBAL__sub_I_Runtime_File_0_cpp"].apply(null, arguments);
  23101. });
  23102. var __GLOBAL__sub_I_Runtime_GameCode_0_cpp = Module["__GLOBAL__sub_I_Runtime_GameCode_0_cpp"] = (function() {
  23103. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23104. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23105. return Module["asm"]["__GLOBAL__sub_I_Runtime_GameCode_0_cpp"].apply(null, arguments);
  23106. });
  23107. var __GLOBAL__sub_I_Runtime_Geometry_1_cpp = Module["__GLOBAL__sub_I_Runtime_Geometry_1_cpp"] = (function() {
  23108. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23109. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23110. return Module["asm"]["__GLOBAL__sub_I_Runtime_Geometry_1_cpp"].apply(null, arguments);
  23111. });
  23112. var __GLOBAL__sub_I_Runtime_Geometry_2_cpp = Module["__GLOBAL__sub_I_Runtime_Geometry_2_cpp"] = (function() {
  23113. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23114. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23115. return Module["asm"]["__GLOBAL__sub_I_Runtime_Geometry_2_cpp"].apply(null, arguments);
  23116. });
  23117. var __GLOBAL__sub_I_Runtime_GfxDevice_1_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_1_cpp"] = (function() {
  23118. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23119. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23120. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_1_cpp"].apply(null, arguments);
  23121. });
  23122. var __GLOBAL__sub_I_Runtime_GfxDevice_2_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_2_cpp"] = (function() {
  23123. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23124. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23125. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_2_cpp"].apply(null, arguments);
  23126. });
  23127. var __GLOBAL__sub_I_Runtime_GfxDevice_3_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_3_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 Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_3_cpp"].apply(null, arguments);
  23131. });
  23132. var __GLOBAL__sub_I_Runtime_GfxDevice_4_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_4_cpp"] = (function() {
  23133. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23134. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23135. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_4_cpp"].apply(null, arguments);
  23136. });
  23137. var __GLOBAL__sub_I_Runtime_GfxDevice_5_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_5_cpp"] = (function() {
  23138. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23139. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23140. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_5_cpp"].apply(null, arguments);
  23141. });
  23142. var __GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp"] = (function() {
  23143. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23144. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23145. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp"].apply(null, arguments);
  23146. });
  23147. var __GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp"] = (function() {
  23148. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23149. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23150. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp"].apply(null, arguments);
  23151. });
  23152. var __GLOBAL__sub_I_Runtime_Graphics_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_0_cpp"] = (function() {
  23153. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23154. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23155. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_0_cpp"].apply(null, arguments);
  23156. });
  23157. var __GLOBAL__sub_I_Runtime_Graphics_10_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_10_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 Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_10_cpp"].apply(null, arguments);
  23161. });
  23162. var __GLOBAL__sub_I_Runtime_Graphics_11_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_11_cpp"] = (function() {
  23163. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23164. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23165. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_11_cpp"].apply(null, arguments);
  23166. });
  23167. var __GLOBAL__sub_I_Runtime_Graphics_12_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_12_cpp"] = (function() {
  23168. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23169. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23170. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_12_cpp"].apply(null, arguments);
  23171. });
  23172. var __GLOBAL__sub_I_Runtime_Graphics_1_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_1_cpp"] = (function() {
  23173. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23174. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23175. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_1_cpp"].apply(null, arguments);
  23176. });
  23177. var __GLOBAL__sub_I_Runtime_Graphics_2_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_2_cpp"] = (function() {
  23178. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23179. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23180. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_2_cpp"].apply(null, arguments);
  23181. });
  23182. var __GLOBAL__sub_I_Runtime_Graphics_4_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_4_cpp"] = (function() {
  23183. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23184. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23185. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_4_cpp"].apply(null, arguments);
  23186. });
  23187. var __GLOBAL__sub_I_Runtime_Graphics_5_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_5_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 Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_5_cpp"].apply(null, arguments);
  23191. });
  23192. var __GLOBAL__sub_I_Runtime_Graphics_6_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_6_cpp"] = (function() {
  23193. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23194. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23195. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_6_cpp"].apply(null, arguments);
  23196. });
  23197. var __GLOBAL__sub_I_Runtime_Graphics_8_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_8_cpp"] = (function() {
  23198. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23199. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23200. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_8_cpp"].apply(null, arguments);
  23201. });
  23202. var __GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp"] = (function() {
  23203. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23204. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23205. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp"].apply(null, arguments);
  23206. });
  23207. var __GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp"] = (function() {
  23208. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23209. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23210. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp"].apply(null, arguments);
  23211. });
  23212. var __GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp"] = (function() {
  23213. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23214. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23215. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp"].apply(null, arguments);
  23216. });
  23217. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp"].apply(null, arguments);
  23221. });
  23222. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp"] = (function() {
  23223. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23224. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23225. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp"].apply(null, arguments);
  23226. });
  23227. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp"] = (function() {
  23228. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23229. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23230. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp"].apply(null, arguments);
  23231. });
  23232. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp"] = (function() {
  23233. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23234. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23235. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp"].apply(null, arguments);
  23236. });
  23237. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp"] = (function() {
  23238. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23239. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23240. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp"].apply(null, arguments);
  23241. });
  23242. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp"] = (function() {
  23243. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23244. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23245. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp"].apply(null, arguments);
  23246. });
  23247. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp"].apply(null, arguments);
  23251. });
  23252. var __GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp"] = (function() {
  23253. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23254. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23255. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp"].apply(null, arguments);
  23256. });
  23257. var __GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp"] = (function() {
  23258. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23259. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23260. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp"].apply(null, arguments);
  23261. });
  23262. var __GLOBAL__sub_I_Runtime_Input_0_cpp = Module["__GLOBAL__sub_I_Runtime_Input_0_cpp"] = (function() {
  23263. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23264. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23265. return Module["asm"]["__GLOBAL__sub_I_Runtime_Input_0_cpp"].apply(null, arguments);
  23266. });
  23267. var __GLOBAL__sub_I_Runtime_Interfaces_0_cpp = Module["__GLOBAL__sub_I_Runtime_Interfaces_0_cpp"] = (function() {
  23268. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23269. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23270. return Module["asm"]["__GLOBAL__sub_I_Runtime_Interfaces_0_cpp"].apply(null, arguments);
  23271. });
  23272. var __GLOBAL__sub_I_Runtime_Interfaces_1_cpp = Module["__GLOBAL__sub_I_Runtime_Interfaces_1_cpp"] = (function() {
  23273. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23274. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23275. return Module["asm"]["__GLOBAL__sub_I_Runtime_Interfaces_1_cpp"].apply(null, arguments);
  23276. });
  23277. var __GLOBAL__sub_I_Runtime_Interfaces_3_cpp = Module["__GLOBAL__sub_I_Runtime_Interfaces_3_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Interfaces_3_cpp"].apply(null, arguments);
  23281. });
  23282. var __GLOBAL__sub_I_Runtime_Jobs_0_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_0_cpp"] = (function() {
  23283. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23284. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23285. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_0_cpp"].apply(null, arguments);
  23286. });
  23287. var __GLOBAL__sub_I_Runtime_Jobs_1_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_1_cpp"] = (function() {
  23288. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23289. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23290. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_1_cpp"].apply(null, arguments);
  23291. });
  23292. var __GLOBAL__sub_I_Runtime_Jobs_2_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_2_cpp"] = (function() {
  23293. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23294. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23295. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_2_cpp"].apply(null, arguments);
  23296. });
  23297. var __GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp"] = (function() {
  23298. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23299. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23300. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp"].apply(null, arguments);
  23301. });
  23302. var __GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp"] = (function() {
  23303. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23304. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23305. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp"].apply(null, arguments);
  23306. });
  23307. var __GLOBAL__sub_I_Runtime_Math_2_cpp = Module["__GLOBAL__sub_I_Runtime_Math_2_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Math_2_cpp"].apply(null, arguments);
  23311. });
  23312. var __GLOBAL__sub_I_Runtime_Math_Random_0_cpp = Module["__GLOBAL__sub_I_Runtime_Math_Random_0_cpp"] = (function() {
  23313. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23314. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23315. return Module["asm"]["__GLOBAL__sub_I_Runtime_Math_Random_0_cpp"].apply(null, arguments);
  23316. });
  23317. var __GLOBAL__sub_I_Runtime_Misc_0_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_0_cpp"] = (function() {
  23318. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23319. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23320. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_0_cpp"].apply(null, arguments);
  23321. });
  23322. var __GLOBAL__sub_I_Runtime_Misc_1_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_1_cpp"] = (function() {
  23323. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23324. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23325. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_1_cpp"].apply(null, arguments);
  23326. });
  23327. var __GLOBAL__sub_I_Runtime_Misc_2_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_2_cpp"] = (function() {
  23328. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23329. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23330. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_2_cpp"].apply(null, arguments);
  23331. });
  23332. var __GLOBAL__sub_I_Runtime_Misc_3_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_3_cpp"] = (function() {
  23333. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23334. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23335. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_3_cpp"].apply(null, arguments);
  23336. });
  23337. var __GLOBAL__sub_I_Runtime_Misc_4_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_4_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_4_cpp"].apply(null, arguments);
  23341. });
  23342. var __GLOBAL__sub_I_Runtime_Misc_5_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_5_cpp"] = (function() {
  23343. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23344. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23345. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_5_cpp"].apply(null, arguments);
  23346. });
  23347. var __GLOBAL__sub_I_Runtime_Modules_0_cpp = Module["__GLOBAL__sub_I_Runtime_Modules_0_cpp"] = (function() {
  23348. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23349. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23350. return Module["asm"]["__GLOBAL__sub_I_Runtime_Modules_0_cpp"].apply(null, arguments);
  23351. });
  23352. var __GLOBAL__sub_I_Runtime_Mono_0_cpp = Module["__GLOBAL__sub_I_Runtime_Mono_0_cpp"] = (function() {
  23353. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23354. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23355. return Module["asm"]["__GLOBAL__sub_I_Runtime_Mono_0_cpp"].apply(null, arguments);
  23356. });
  23357. var __GLOBAL__sub_I_Runtime_Mono_2_cpp = Module["__GLOBAL__sub_I_Runtime_Mono_2_cpp"] = (function() {
  23358. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23359. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23360. return Module["asm"]["__GLOBAL__sub_I_Runtime_Mono_2_cpp"].apply(null, arguments);
  23361. });
  23362. var __GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp = Module["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp"] = (function() {
  23363. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23364. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23365. return Module["asm"]["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp"].apply(null, arguments);
  23366. });
  23367. var __GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp = Module["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp"].apply(null, arguments);
  23371. });
  23372. var __GLOBAL__sub_I_Runtime_Network_0_cpp = Module["__GLOBAL__sub_I_Runtime_Network_0_cpp"] = (function() {
  23373. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23374. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23375. return Module["asm"]["__GLOBAL__sub_I_Runtime_Network_0_cpp"].apply(null, arguments);
  23376. });
  23377. var __GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp = Module["__GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp"] = (function() {
  23378. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23379. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23380. return Module["asm"]["__GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp"].apply(null, arguments);
  23381. });
  23382. var __GLOBAL__sub_I_Runtime_PluginInterface_0_cpp = Module["__GLOBAL__sub_I_Runtime_PluginInterface_0_cpp"] = (function() {
  23383. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23384. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23385. return Module["asm"]["__GLOBAL__sub_I_Runtime_PluginInterface_0_cpp"].apply(null, arguments);
  23386. });
  23387. var __GLOBAL__sub_I_Runtime_PreloadManager_0_cpp = Module["__GLOBAL__sub_I_Runtime_PreloadManager_0_cpp"] = (function() {
  23388. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23389. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23390. return Module["asm"]["__GLOBAL__sub_I_Runtime_PreloadManager_0_cpp"].apply(null, arguments);
  23391. });
  23392. var __GLOBAL__sub_I_Runtime_Profiler_0_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_0_cpp"] = (function() {
  23393. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23394. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23395. return Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_0_cpp"].apply(null, arguments);
  23396. });
  23397. var __GLOBAL__sub_I_Runtime_Profiler_1_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_1_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_1_cpp"].apply(null, arguments);
  23401. });
  23402. var __GLOBAL__sub_I_Runtime_Profiler_2_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_2_cpp"] = (function() {
  23403. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23404. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23405. return Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_2_cpp"].apply(null, arguments);
  23406. });
  23407. var __GLOBAL__sub_I_Runtime_Profiler_ExternalGPUProfiler_0_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_ExternalGPUProfiler_0_cpp"] = (function() {
  23408. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23409. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23410. return Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_ExternalGPUProfiler_0_cpp"].apply(null, arguments);
  23411. });
  23412. var __GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp"] = (function() {
  23413. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23414. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23415. return Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp"].apply(null, arguments);
  23416. });
  23417. var __GLOBAL__sub_I_Runtime_SceneManager_0_cpp = Module["__GLOBAL__sub_I_Runtime_SceneManager_0_cpp"] = (function() {
  23418. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23419. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23420. return Module["asm"]["__GLOBAL__sub_I_Runtime_SceneManager_0_cpp"].apply(null, arguments);
  23421. });
  23422. var __GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp = Module["__GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp"] = (function() {
  23423. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23424. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23425. return Module["asm"]["__GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp"].apply(null, arguments);
  23426. });
  23427. var __GLOBAL__sub_I_Runtime_Scripting_0_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_0_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_0_cpp"].apply(null, arguments);
  23431. });
  23432. var __GLOBAL__sub_I_Runtime_Scripting_2_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_2_cpp"] = (function() {
  23433. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23434. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23435. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_2_cpp"].apply(null, arguments);
  23436. });
  23437. var __GLOBAL__sub_I_Runtime_Scripting_3_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_3_cpp"] = (function() {
  23438. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23439. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23440. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_3_cpp"].apply(null, arguments);
  23441. });
  23442. var __GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp"] = (function() {
  23443. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23444. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23445. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp"].apply(null, arguments);
  23446. });
  23447. var __GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp"] = (function() {
  23448. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23449. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23450. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp"].apply(null, arguments);
  23451. });
  23452. var __GLOBAL__sub_I_Runtime_Serialize_0_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_0_cpp"] = (function() {
  23453. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23454. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23455. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_0_cpp"].apply(null, arguments);
  23456. });
  23457. var __GLOBAL__sub_I_Runtime_Serialize_1_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_1_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_1_cpp"].apply(null, arguments);
  23461. });
  23462. var __GLOBAL__sub_I_Runtime_Serialize_2_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_2_cpp"] = (function() {
  23463. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23464. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23465. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_2_cpp"].apply(null, arguments);
  23466. });
  23467. var __GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp"] = (function() {
  23468. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23469. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23470. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp"].apply(null, arguments);
  23471. });
  23472. var __GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp"] = (function() {
  23473. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23474. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23475. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp"].apply(null, arguments);
  23476. });
  23477. var __GLOBAL__sub_I_Runtime_Shaders_0_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_0_cpp"] = (function() {
  23478. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23479. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23480. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_0_cpp"].apply(null, arguments);
  23481. });
  23482. var __GLOBAL__sub_I_Runtime_Shaders_1_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_1_cpp"] = (function() {
  23483. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23484. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23485. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_1_cpp"].apply(null, arguments);
  23486. });
  23487. var __GLOBAL__sub_I_Runtime_Shaders_4_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_4_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_4_cpp"].apply(null, arguments);
  23491. });
  23492. var __GLOBAL__sub_I_Runtime_Shaders_5_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_5_cpp"] = (function() {
  23493. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23494. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23495. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_5_cpp"].apply(null, arguments);
  23496. });
  23497. var __GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp"] = (function() {
  23498. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23499. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23500. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp"].apply(null, arguments);
  23501. });
  23502. var __GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp"] = (function() {
  23503. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23504. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23505. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp"].apply(null, arguments);
  23506. });
  23507. var __GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp"] = (function() {
  23508. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23509. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23510. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp"].apply(null, arguments);
  23511. });
  23512. var __GLOBAL__sub_I_Runtime_Streaming_0_cpp = Module["__GLOBAL__sub_I_Runtime_Streaming_0_cpp"] = (function() {
  23513. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23514. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23515. return Module["asm"]["__GLOBAL__sub_I_Runtime_Streaming_0_cpp"].apply(null, arguments);
  23516. });
  23517. var __GLOBAL__sub_I_Runtime_Streaming_1_cpp = Module["__GLOBAL__sub_I_Runtime_Streaming_1_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Streaming_1_cpp"].apply(null, arguments);
  23521. });
  23522. var __GLOBAL__sub_I_Runtime_Transform_0_cpp = Module["__GLOBAL__sub_I_Runtime_Transform_0_cpp"] = (function() {
  23523. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23524. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23525. return Module["asm"]["__GLOBAL__sub_I_Runtime_Transform_0_cpp"].apply(null, arguments);
  23526. });
  23527. var __GLOBAL__sub_I_Runtime_Transform_1_cpp = Module["__GLOBAL__sub_I_Runtime_Transform_1_cpp"] = (function() {
  23528. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23529. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23530. return Module["asm"]["__GLOBAL__sub_I_Runtime_Transform_1_cpp"].apply(null, arguments);
  23531. });
  23532. var __GLOBAL__sub_I_Runtime_Utilities_2_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_2_cpp"] = (function() {
  23533. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23534. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23535. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_2_cpp"].apply(null, arguments);
  23536. });
  23537. var __GLOBAL__sub_I_Runtime_Utilities_5_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_5_cpp"] = (function() {
  23538. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23539. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23540. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_5_cpp"].apply(null, arguments);
  23541. });
  23542. var __GLOBAL__sub_I_Runtime_Utilities_6_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_6_cpp"] = (function() {
  23543. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23544. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23545. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_6_cpp"].apply(null, arguments);
  23546. });
  23547. var __GLOBAL__sub_I_Runtime_Utilities_7_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_7_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_7_cpp"].apply(null, arguments);
  23551. });
  23552. var __GLOBAL__sub_I_Runtime_Utilities_8_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_8_cpp"] = (function() {
  23553. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23554. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23555. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_8_cpp"].apply(null, arguments);
  23556. });
  23557. var __GLOBAL__sub_I_Runtime_Utilities_9_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_9_cpp"] = (function() {
  23558. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23559. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23560. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_9_cpp"].apply(null, arguments);
  23561. });
  23562. var __GLOBAL__sub_I_Runtime_Video_0_cpp = Module["__GLOBAL__sub_I_Runtime_Video_0_cpp"] = (function() {
  23563. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23564. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23565. return Module["asm"]["__GLOBAL__sub_I_Runtime_Video_0_cpp"].apply(null, arguments);
  23566. });
  23567. var __GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp = Module["__GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp"] = (function() {
  23568. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23569. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23570. return Module["asm"]["__GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp"].apply(null, arguments);
  23571. });
  23572. var __GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp = Module["__GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp"] = (function() {
  23573. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23574. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23575. return Module["asm"]["__GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp"].apply(null, arguments);
  23576. });
  23577. var __GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp = Module["__GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp"].apply(null, arguments);
  23581. });
  23582. var __GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp = Module["__GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp"] = (function() {
  23583. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23584. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23585. return Module["asm"]["__GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp"].apply(null, arguments);
  23586. });
  23587. var __GLOBAL__sub_I_Shader_cpp = Module["__GLOBAL__sub_I_Shader_cpp"] = (function() {
  23588. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23589. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23590. return Module["asm"]["__GLOBAL__sub_I_Shader_cpp"].apply(null, arguments);
  23591. });
  23592. var __GLOBAL__sub_I_Shadows_cpp = Module["__GLOBAL__sub_I_Shadows_cpp"] = (function() {
  23593. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23594. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23595. return Module["asm"]["__GLOBAL__sub_I_Shadows_cpp"].apply(null, arguments);
  23596. });
  23597. var __GLOBAL__sub_I_ShapeModule_cpp = Module["__GLOBAL__sub_I_ShapeModule_cpp"] = (function() {
  23598. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23599. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23600. return Module["asm"]["__GLOBAL__sub_I_ShapeModule_cpp"].apply(null, arguments);
  23601. });
  23602. var __GLOBAL__sub_I_SpriteShapeBindings_gen_cpp = Module["__GLOBAL__sub_I_SpriteShapeBindings_gen_cpp"] = (function() {
  23603. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23604. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23605. return Module["asm"]["__GLOBAL__sub_I_SpriteShapeBindings_gen_cpp"].apply(null, arguments);
  23606. });
  23607. var __GLOBAL__sub_I_SubsystemsScriptingClasses_cpp = Module["__GLOBAL__sub_I_SubsystemsScriptingClasses_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_SubsystemsScriptingClasses_cpp"].apply(null, arguments);
  23611. });
  23612. var __GLOBAL__sub_I_SwInterCollision_cpp = Module["__GLOBAL__sub_I_SwInterCollision_cpp"] = (function() {
  23613. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23614. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23615. return Module["asm"]["__GLOBAL__sub_I_SwInterCollision_cpp"].apply(null, arguments);
  23616. });
  23617. var __GLOBAL__sub_I_SwSolverKernel_cpp = Module["__GLOBAL__sub_I_SwSolverKernel_cpp"] = (function() {
  23618. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23619. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23620. return Module["asm"]["__GLOBAL__sub_I_SwSolverKernel_cpp"].apply(null, arguments);
  23621. });
  23622. var __GLOBAL__sub_I_TLSModule_cpp = Module["__GLOBAL__sub_I_TLSModule_cpp"] = (function() {
  23623. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23624. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23625. return Module["asm"]["__GLOBAL__sub_I_TLSModule_cpp"].apply(null, arguments);
  23626. });
  23627. var __GLOBAL__sub_I_TemplateInstantiations_cpp = Module["__GLOBAL__sub_I_TemplateInstantiations_cpp"] = (function() {
  23628. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23629. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23630. return Module["asm"]["__GLOBAL__sub_I_TemplateInstantiations_cpp"].apply(null, arguments);
  23631. });
  23632. var __GLOBAL__sub_I_TerrainScriptingClasses_cpp = Module["__GLOBAL__sub_I_TerrainScriptingClasses_cpp"] = (function() {
  23633. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23634. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23635. return Module["asm"]["__GLOBAL__sub_I_TerrainScriptingClasses_cpp"].apply(null, arguments);
  23636. });
  23637. var __GLOBAL__sub_I_TextCoreScriptingClasses_cpp = Module["__GLOBAL__sub_I_TextCoreScriptingClasses_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_TextCoreScriptingClasses_cpp"].apply(null, arguments);
  23641. });
  23642. var __GLOBAL__sub_I_TextRenderingScriptingClasses_cpp = Module["__GLOBAL__sub_I_TextRenderingScriptingClasses_cpp"] = (function() {
  23643. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23644. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23645. return Module["asm"]["__GLOBAL__sub_I_TextRenderingScriptingClasses_cpp"].apply(null, arguments);
  23646. });
  23647. var __GLOBAL__sub_I_TilemapScriptingClasses_cpp = Module["__GLOBAL__sub_I_TilemapScriptingClasses_cpp"] = (function() {
  23648. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23649. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23650. return Module["asm"]["__GLOBAL__sub_I_TilemapScriptingClasses_cpp"].apply(null, arguments);
  23651. });
  23652. var __GLOBAL__sub_I_TrailRenderer_cpp = Module["__GLOBAL__sub_I_TrailRenderer_cpp"] = (function() {
  23653. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23654. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23655. return Module["asm"]["__GLOBAL__sub_I_TrailRenderer_cpp"].apply(null, arguments);
  23656. });
  23657. var __GLOBAL__sub_I_UIElementsNativeScriptingClasses_cpp = Module["__GLOBAL__sub_I_UIElementsNativeScriptingClasses_cpp"] = (function() {
  23658. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23659. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23660. return Module["asm"]["__GLOBAL__sub_I_UIElementsNativeScriptingClasses_cpp"].apply(null, arguments);
  23661. });
  23662. var __GLOBAL__sub_I_UIScriptingClasses_cpp = Module["__GLOBAL__sub_I_UIScriptingClasses_cpp"] = (function() {
  23663. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23664. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23665. return Module["asm"]["__GLOBAL__sub_I_UIScriptingClasses_cpp"].apply(null, arguments);
  23666. });
  23667. var __GLOBAL__sub_I_UIWidgets_cpp = Module["__GLOBAL__sub_I_UIWidgets_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_UIWidgets_cpp"].apply(null, arguments);
  23671. });
  23672. var __GLOBAL__sub_I_UVModule_cpp = Module["__GLOBAL__sub_I_UVModule_cpp"] = (function() {
  23673. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23674. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23675. return Module["asm"]["__GLOBAL__sub_I_UVModule_cpp"].apply(null, arguments);
  23676. });
  23677. var __GLOBAL__sub_I_UnityAdsSettings_cpp = Module["__GLOBAL__sub_I_UnityAdsSettings_cpp"] = (function() {
  23678. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23679. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23680. return Module["asm"]["__GLOBAL__sub_I_UnityAdsSettings_cpp"].apply(null, arguments);
  23681. });
  23682. var __GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp = Module["__GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp"] = (function() {
  23683. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23684. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23685. return Module["asm"]["__GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp"].apply(null, arguments);
  23686. });
  23687. var __GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp = Module["__GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp"] = (function() {
  23688. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23689. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23690. return Module["asm"]["__GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp"].apply(null, arguments);
  23691. });
  23692. var __GLOBAL__sub_I_VFXScriptingClasses_cpp = Module["__GLOBAL__sub_I_VFXScriptingClasses_cpp"] = (function() {
  23693. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23694. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23695. return Module["asm"]["__GLOBAL__sub_I_VFXScriptingClasses_cpp"].apply(null, arguments);
  23696. });
  23697. var __GLOBAL__sub_I_VRScriptingClasses_cpp = Module["__GLOBAL__sub_I_VRScriptingClasses_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_VRScriptingClasses_cpp"].apply(null, arguments);
  23701. });
  23702. var __GLOBAL__sub_I_VelocityModule_cpp = Module["__GLOBAL__sub_I_VelocityModule_cpp"] = (function() {
  23703. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23704. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23705. return Module["asm"]["__GLOBAL__sub_I_VelocityModule_cpp"].apply(null, arguments);
  23706. });
  23707. var __GLOBAL__sub_I_VideoMediaOutput_cpp = Module["__GLOBAL__sub_I_VideoMediaOutput_cpp"] = (function() {
  23708. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23709. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23710. return Module["asm"]["__GLOBAL__sub_I_VideoMediaOutput_cpp"].apply(null, arguments);
  23711. });
  23712. var __GLOBAL__sub_I_VideoScriptingClasses_cpp = Module["__GLOBAL__sub_I_VideoScriptingClasses_cpp"] = (function() {
  23713. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23714. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23715. return Module["asm"]["__GLOBAL__sub_I_VideoScriptingClasses_cpp"].apply(null, arguments);
  23716. });
  23717. var __GLOBAL__sub_I_VideoYUV420Convert_cpp = Module["__GLOBAL__sub_I_VideoYUV420Convert_cpp"] = (function() {
  23718. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23719. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23720. return Module["asm"]["__GLOBAL__sub_I_VideoYUV420Convert_cpp"].apply(null, arguments);
  23721. });
  23722. var __GLOBAL__sub_I_VisualEffectAsset_cpp = Module["__GLOBAL__sub_I_VisualEffectAsset_cpp"] = (function() {
  23723. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23724. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23725. return Module["asm"]["__GLOBAL__sub_I_VisualEffectAsset_cpp"].apply(null, arguments);
  23726. });
  23727. var __GLOBAL__sub_I_Wind_cpp = Module["__GLOBAL__sub_I_Wind_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_Wind_cpp"].apply(null, arguments);
  23731. });
  23732. var __GLOBAL__sub_I_XRAudio_cpp = Module["__GLOBAL__sub_I_XRAudio_cpp"] = (function() {
  23733. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23734. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23735. return Module["asm"]["__GLOBAL__sub_I_XRAudio_cpp"].apply(null, arguments);
  23736. });
  23737. var __GLOBAL__sub_I_XRPreInit_cpp = Module["__GLOBAL__sub_I_XRPreInit_cpp"] = (function() {
  23738. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23739. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23740. return Module["asm"]["__GLOBAL__sub_I_XRPreInit_cpp"].apply(null, arguments);
  23741. });
  23742. var __GLOBAL__sub_I_XRScriptingClasses_cpp = Module["__GLOBAL__sub_I_XRScriptingClasses_cpp"] = (function() {
  23743. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23744. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23745. return Module["asm"]["__GLOBAL__sub_I_XRScriptingClasses_cpp"].apply(null, arguments);
  23746. });
  23747. var __GLOBAL__sub_I_XRWindowsLocatableCamera_cpp = Module["__GLOBAL__sub_I_XRWindowsLocatableCamera_cpp"] = (function() {
  23748. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23749. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23750. return Module["asm"]["__GLOBAL__sub_I_XRWindowsLocatableCamera_cpp"].apply(null, arguments);
  23751. });
  23752. var __GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp = Module["__GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp"] = (function() {
  23753. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23754. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23755. return Module["asm"]["__GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp"].apply(null, arguments);
  23756. });
  23757. var __GLOBAL__sub_I_clipmuscle_cpp = Module["__GLOBAL__sub_I_clipmuscle_cpp"] = (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 Module["asm"]["__GLOBAL__sub_I_clipmuscle_cpp"].apply(null, arguments);
  23761. });
  23762. var __GLOBAL__sub_I_nvcloth_src_0_cpp = Module["__GLOBAL__sub_I_nvcloth_src_0_cpp"] = (function() {
  23763. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23764. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23765. return Module["asm"]["__GLOBAL__sub_I_nvcloth_src_0_cpp"].apply(null, arguments);
  23766. });
  23767. var __GLOBAL__sub_I_nvcloth_src_1_cpp = Module["__GLOBAL__sub_I_nvcloth_src_1_cpp"] = (function() {
  23768. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23769. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23770. return Module["asm"]["__GLOBAL__sub_I_nvcloth_src_1_cpp"].apply(null, arguments);
  23771. });
  23772. var __GLOBAL__sub_I_umbra_cpp = Module["__GLOBAL__sub_I_umbra_cpp"] = (function() {
  23773. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23774. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23775. return Module["asm"]["__GLOBAL__sub_I_umbra_cpp"].apply(null, arguments);
  23776. });
  23777. var ___cxa_can_catch = Module["___cxa_can_catch"] = (function() {
  23778. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23779. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23780. return Module["asm"]["___cxa_can_catch"].apply(null, arguments);
  23781. });
  23782. var ___cxa_demangle = Module["___cxa_demangle"] = (function() {
  23783. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23784. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23785. return Module["asm"]["___cxa_demangle"].apply(null, arguments);
  23786. });
  23787. var ___cxa_is_pointer_type = Module["___cxa_is_pointer_type"] = (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 Module["asm"]["___cxa_is_pointer_type"].apply(null, arguments);
  23791. });
  23792. var ___cxx_global_var_init_10 = Module["___cxx_global_var_init_10"] = (function() {
  23793. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23794. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23795. return Module["asm"]["___cxx_global_var_init_10"].apply(null, arguments);
  23796. });
  23797. var ___cxx_global_var_init_104 = Module["___cxx_global_var_init_104"] = (function() {
  23798. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23799. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23800. return Module["asm"]["___cxx_global_var_init_104"].apply(null, arguments);
  23801. });
  23802. var ___cxx_global_var_init_105 = Module["___cxx_global_var_init_105"] = (function() {
  23803. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23804. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23805. return Module["asm"]["___cxx_global_var_init_105"].apply(null, arguments);
  23806. });
  23807. var ___cxx_global_var_init_10913 = Module["___cxx_global_var_init_10913"] = (function() {
  23808. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23809. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23810. return Module["asm"]["___cxx_global_var_init_10913"].apply(null, arguments);
  23811. });
  23812. var ___cxx_global_var_init_10_8165 = Module["___cxx_global_var_init_10_8165"] = (function() {
  23813. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23814. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23815. return Module["asm"]["___cxx_global_var_init_10_8165"].apply(null, arguments);
  23816. });
  23817. var ___cxx_global_var_init_10_9872 = Module["___cxx_global_var_init_10_9872"] = (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 Module["asm"]["___cxx_global_var_init_10_9872"].apply(null, arguments);
  23821. });
  23822. var ___cxx_global_var_init_11 = Module["___cxx_global_var_init_11"] = (function() {
  23823. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23824. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23825. return Module["asm"]["___cxx_global_var_init_11"].apply(null, arguments);
  23826. });
  23827. var ___cxx_global_var_init_110 = Module["___cxx_global_var_init_110"] = (function() {
  23828. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23829. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23830. return Module["asm"]["___cxx_global_var_init_110"].apply(null, arguments);
  23831. });
  23832. var ___cxx_global_var_init_111 = Module["___cxx_global_var_init_111"] = (function() {
  23833. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23834. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23835. return Module["asm"]["___cxx_global_var_init_111"].apply(null, arguments);
  23836. });
  23837. var ___cxx_global_var_init_112 = Module["___cxx_global_var_init_112"] = (function() {
  23838. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23839. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23840. return Module["asm"]["___cxx_global_var_init_112"].apply(null, arguments);
  23841. });
  23842. var ___cxx_global_var_init_113 = Module["___cxx_global_var_init_113"] = (function() {
  23843. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23844. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23845. return Module["asm"]["___cxx_global_var_init_113"].apply(null, arguments);
  23846. });
  23847. var ___cxx_global_var_init_114 = Module["___cxx_global_var_init_114"] = (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 Module["asm"]["___cxx_global_var_init_114"].apply(null, arguments);
  23851. });
  23852. var ___cxx_global_var_init_11_8166 = Module["___cxx_global_var_init_11_8166"] = (function() {
  23853. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23854. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23855. return Module["asm"]["___cxx_global_var_init_11_8166"].apply(null, arguments);
  23856. });
  23857. var ___cxx_global_var_init_12 = Module["___cxx_global_var_init_12"] = (function() {
  23858. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23859. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23860. return Module["asm"]["___cxx_global_var_init_12"].apply(null, arguments);
  23861. });
  23862. var ___cxx_global_var_init_12_8167 = Module["___cxx_global_var_init_12_8167"] = (function() {
  23863. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23864. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23865. return Module["asm"]["___cxx_global_var_init_12_8167"].apply(null, arguments);
  23866. });
  23867. var ___cxx_global_var_init_136 = Module["___cxx_global_var_init_136"] = (function() {
  23868. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23869. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23870. return Module["asm"]["___cxx_global_var_init_136"].apply(null, arguments);
  23871. });
  23872. var ___cxx_global_var_init_137 = Module["___cxx_global_var_init_137"] = (function() {
  23873. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23874. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23875. return Module["asm"]["___cxx_global_var_init_137"].apply(null, arguments);
  23876. });
  23877. var ___cxx_global_var_init_144 = Module["___cxx_global_var_init_144"] = (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 Module["asm"]["___cxx_global_var_init_144"].apply(null, arguments);
  23881. });
  23882. var ___cxx_global_var_init_148 = Module["___cxx_global_var_init_148"] = (function() {
  23883. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23884. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23885. return Module["asm"]["___cxx_global_var_init_148"].apply(null, arguments);
  23886. });
  23887. var ___cxx_global_var_init_149 = Module["___cxx_global_var_init_149"] = (function() {
  23888. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23889. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23890. return Module["asm"]["___cxx_global_var_init_149"].apply(null, arguments);
  23891. });
  23892. var ___cxx_global_var_init_15 = Module["___cxx_global_var_init_15"] = (function() {
  23893. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23894. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23895. return Module["asm"]["___cxx_global_var_init_15"].apply(null, arguments);
  23896. });
  23897. var ___cxx_global_var_init_150 = Module["___cxx_global_var_init_150"] = (function() {
  23898. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23899. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23900. return Module["asm"]["___cxx_global_var_init_150"].apply(null, arguments);
  23901. });
  23902. var ___cxx_global_var_init_155 = Module["___cxx_global_var_init_155"] = (function() {
  23903. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23904. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23905. return Module["asm"]["___cxx_global_var_init_155"].apply(null, arguments);
  23906. });
  23907. var ___cxx_global_var_init_162 = Module["___cxx_global_var_init_162"] = (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 Module["asm"]["___cxx_global_var_init_162"].apply(null, arguments);
  23911. });
  23912. var ___cxx_global_var_init_17 = Module["___cxx_global_var_init_17"] = (function() {
  23913. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23914. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23915. return Module["asm"]["___cxx_global_var_init_17"].apply(null, arguments);
  23916. });
  23917. var ___cxx_global_var_init_17063 = Module["___cxx_global_var_init_17063"] = (function() {
  23918. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23919. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23920. return Module["asm"]["___cxx_global_var_init_17063"].apply(null, arguments);
  23921. });
  23922. var ___cxx_global_var_init_172 = Module["___cxx_global_var_init_172"] = (function() {
  23923. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23924. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23925. return Module["asm"]["___cxx_global_var_init_172"].apply(null, arguments);
  23926. });
  23927. var ___cxx_global_var_init_173 = Module["___cxx_global_var_init_173"] = (function() {
  23928. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23929. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23930. return Module["asm"]["___cxx_global_var_init_173"].apply(null, arguments);
  23931. });
  23932. var ___cxx_global_var_init_174 = Module["___cxx_global_var_init_174"] = (function() {
  23933. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23934. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23935. return Module["asm"]["___cxx_global_var_init_174"].apply(null, arguments);
  23936. });
  23937. var ___cxx_global_var_init_175 = Module["___cxx_global_var_init_175"] = (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 Module["asm"]["___cxx_global_var_init_175"].apply(null, arguments);
  23941. });
  23942. var ___cxx_global_var_init_176 = Module["___cxx_global_var_init_176"] = (function() {
  23943. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23944. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23945. return Module["asm"]["___cxx_global_var_init_176"].apply(null, arguments);
  23946. });
  23947. var ___cxx_global_var_init_177 = Module["___cxx_global_var_init_177"] = (function() {
  23948. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23949. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23950. return Module["asm"]["___cxx_global_var_init_177"].apply(null, arguments);
  23951. });
  23952. var ___cxx_global_var_init_178 = Module["___cxx_global_var_init_178"] = (function() {
  23953. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23954. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23955. return Module["asm"]["___cxx_global_var_init_178"].apply(null, arguments);
  23956. });
  23957. var ___cxx_global_var_init_179 = Module["___cxx_global_var_init_179"] = (function() {
  23958. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23959. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23960. return Module["asm"]["___cxx_global_var_init_179"].apply(null, arguments);
  23961. });
  23962. var ___cxx_global_var_init_18 = Module["___cxx_global_var_init_18"] = (function() {
  23963. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23964. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23965. return Module["asm"]["___cxx_global_var_init_18"].apply(null, arguments);
  23966. });
  23967. var ___cxx_global_var_init_180 = Module["___cxx_global_var_init_180"] = (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 Module["asm"]["___cxx_global_var_init_180"].apply(null, arguments);
  23971. });
  23972. var ___cxx_global_var_init_181 = Module["___cxx_global_var_init_181"] = (function() {
  23973. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23974. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23975. return Module["asm"]["___cxx_global_var_init_181"].apply(null, arguments);
  23976. });
  23977. var ___cxx_global_var_init_182 = Module["___cxx_global_var_init_182"] = (function() {
  23978. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23979. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23980. return Module["asm"]["___cxx_global_var_init_182"].apply(null, arguments);
  23981. });
  23982. var ___cxx_global_var_init_183 = Module["___cxx_global_var_init_183"] = (function() {
  23983. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23984. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23985. return Module["asm"]["___cxx_global_var_init_183"].apply(null, arguments);
  23986. });
  23987. var ___cxx_global_var_init_184 = Module["___cxx_global_var_init_184"] = (function() {
  23988. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23989. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23990. return Module["asm"]["___cxx_global_var_init_184"].apply(null, arguments);
  23991. });
  23992. var ___cxx_global_var_init_185 = Module["___cxx_global_var_init_185"] = (function() {
  23993. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23994. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23995. return Module["asm"]["___cxx_global_var_init_185"].apply(null, arguments);
  23996. });
  23997. var ___cxx_global_var_init_186 = Module["___cxx_global_var_init_186"] = (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 Module["asm"]["___cxx_global_var_init_186"].apply(null, arguments);
  24001. });
  24002. var ___cxx_global_var_init_187 = Module["___cxx_global_var_init_187"] = (function() {
  24003. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24004. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24005. return Module["asm"]["___cxx_global_var_init_187"].apply(null, arguments);
  24006. });
  24007. var ___cxx_global_var_init_188 = Module["___cxx_global_var_init_188"] = (function() {
  24008. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24009. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24010. return Module["asm"]["___cxx_global_var_init_188"].apply(null, arguments);
  24011. });
  24012. var ___cxx_global_var_init_189 = Module["___cxx_global_var_init_189"] = (function() {
  24013. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24014. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24015. return Module["asm"]["___cxx_global_var_init_189"].apply(null, arguments);
  24016. });
  24017. var ___cxx_global_var_init_19 = Module["___cxx_global_var_init_19"] = (function() {
  24018. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24019. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24020. return Module["asm"]["___cxx_global_var_init_19"].apply(null, arguments);
  24021. });
  24022. var ___cxx_global_var_init_190 = Module["___cxx_global_var_init_190"] = (function() {
  24023. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24024. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24025. return Module["asm"]["___cxx_global_var_init_190"].apply(null, arguments);
  24026. });
  24027. var ___cxx_global_var_init_191 = Module["___cxx_global_var_init_191"] = (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 Module["asm"]["___cxx_global_var_init_191"].apply(null, arguments);
  24031. });
  24032. var ___cxx_global_var_init_192 = Module["___cxx_global_var_init_192"] = (function() {
  24033. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24034. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24035. return Module["asm"]["___cxx_global_var_init_192"].apply(null, arguments);
  24036. });
  24037. var ___cxx_global_var_init_192_8380 = Module["___cxx_global_var_init_192_8380"] = (function() {
  24038. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24039. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24040. return Module["asm"]["___cxx_global_var_init_192_8380"].apply(null, arguments);
  24041. });
  24042. var ___cxx_global_var_init_193 = Module["___cxx_global_var_init_193"] = (function() {
  24043. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24044. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24045. return Module["asm"]["___cxx_global_var_init_193"].apply(null, arguments);
  24046. });
  24047. var ___cxx_global_var_init_193_8381 = Module["___cxx_global_var_init_193_8381"] = (function() {
  24048. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24049. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24050. return Module["asm"]["___cxx_global_var_init_193_8381"].apply(null, arguments);
  24051. });
  24052. var ___cxx_global_var_init_194 = Module["___cxx_global_var_init_194"] = (function() {
  24053. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24054. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24055. return Module["asm"]["___cxx_global_var_init_194"].apply(null, arguments);
  24056. });
  24057. var ___cxx_global_var_init_194_8382 = Module["___cxx_global_var_init_194_8382"] = (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 Module["asm"]["___cxx_global_var_init_194_8382"].apply(null, arguments);
  24061. });
  24062. var ___cxx_global_var_init_195 = Module["___cxx_global_var_init_195"] = (function() {
  24063. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24064. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24065. return Module["asm"]["___cxx_global_var_init_195"].apply(null, arguments);
  24066. });
  24067. var ___cxx_global_var_init_195_8383 = Module["___cxx_global_var_init_195_8383"] = (function() {
  24068. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24069. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24070. return Module["asm"]["___cxx_global_var_init_195_8383"].apply(null, arguments);
  24071. });
  24072. var ___cxx_global_var_init_196 = Module["___cxx_global_var_init_196"] = (function() {
  24073. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24074. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24075. return Module["asm"]["___cxx_global_var_init_196"].apply(null, arguments);
  24076. });
  24077. var ___cxx_global_var_init_196_8384 = Module["___cxx_global_var_init_196_8384"] = (function() {
  24078. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24079. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24080. return Module["asm"]["___cxx_global_var_init_196_8384"].apply(null, arguments);
  24081. });
  24082. var ___cxx_global_var_init_197 = Module["___cxx_global_var_init_197"] = (function() {
  24083. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24084. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24085. return Module["asm"]["___cxx_global_var_init_197"].apply(null, arguments);
  24086. });
  24087. var ___cxx_global_var_init_197_8385 = Module["___cxx_global_var_init_197_8385"] = (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 Module["asm"]["___cxx_global_var_init_197_8385"].apply(null, arguments);
  24091. });
  24092. var ___cxx_global_var_init_198 = Module["___cxx_global_var_init_198"] = (function() {
  24093. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24094. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24095. return Module["asm"]["___cxx_global_var_init_198"].apply(null, arguments);
  24096. });
  24097. var ___cxx_global_var_init_198_8386 = Module["___cxx_global_var_init_198_8386"] = (function() {
  24098. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24099. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24100. return Module["asm"]["___cxx_global_var_init_198_8386"].apply(null, arguments);
  24101. });
  24102. var ___cxx_global_var_init_199 = Module["___cxx_global_var_init_199"] = (function() {
  24103. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24104. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24105. return Module["asm"]["___cxx_global_var_init_199"].apply(null, arguments);
  24106. });
  24107. var ___cxx_global_var_init_199_1314 = Module["___cxx_global_var_init_199_1314"] = (function() {
  24108. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24109. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24110. return Module["asm"]["___cxx_global_var_init_199_1314"].apply(null, arguments);
  24111. });
  24112. var ___cxx_global_var_init_1_7199 = Module["___cxx_global_var_init_1_7199"] = (function() {
  24113. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24114. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24115. return Module["asm"]["___cxx_global_var_init_1_7199"].apply(null, arguments);
  24116. });
  24117. var ___cxx_global_var_init_1_9527 = Module["___cxx_global_var_init_1_9527"] = (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 Module["asm"]["___cxx_global_var_init_1_9527"].apply(null, arguments);
  24121. });
  24122. var ___cxx_global_var_init_20 = Module["___cxx_global_var_init_20"] = (function() {
  24123. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24124. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24125. return Module["asm"]["___cxx_global_var_init_20"].apply(null, arguments);
  24126. });
  24127. var ___cxx_global_var_init_200 = Module["___cxx_global_var_init_200"] = (function() {
  24128. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24129. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24130. return Module["asm"]["___cxx_global_var_init_200"].apply(null, arguments);
  24131. });
  24132. var ___cxx_global_var_init_201 = Module["___cxx_global_var_init_201"] = (function() {
  24133. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24134. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24135. return Module["asm"]["___cxx_global_var_init_201"].apply(null, arguments);
  24136. });
  24137. var ___cxx_global_var_init_202 = Module["___cxx_global_var_init_202"] = (function() {
  24138. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24139. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24140. return Module["asm"]["___cxx_global_var_init_202"].apply(null, arguments);
  24141. });
  24142. var ___cxx_global_var_init_203 = Module["___cxx_global_var_init_203"] = (function() {
  24143. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24144. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24145. return Module["asm"]["___cxx_global_var_init_203"].apply(null, arguments);
  24146. });
  24147. var ___cxx_global_var_init_204 = Module["___cxx_global_var_init_204"] = (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 Module["asm"]["___cxx_global_var_init_204"].apply(null, arguments);
  24151. });
  24152. var ___cxx_global_var_init_205 = Module["___cxx_global_var_init_205"] = (function() {
  24153. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24154. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24155. return Module["asm"]["___cxx_global_var_init_205"].apply(null, arguments);
  24156. });
  24157. var ___cxx_global_var_init_206 = Module["___cxx_global_var_init_206"] = (function() {
  24158. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24159. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24160. return Module["asm"]["___cxx_global_var_init_206"].apply(null, arguments);
  24161. });
  24162. var ___cxx_global_var_init_207 = Module["___cxx_global_var_init_207"] = (function() {
  24163. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24164. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24165. return Module["asm"]["___cxx_global_var_init_207"].apply(null, arguments);
  24166. });
  24167. var ___cxx_global_var_init_208 = Module["___cxx_global_var_init_208"] = (function() {
  24168. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24169. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24170. return Module["asm"]["___cxx_global_var_init_208"].apply(null, arguments);
  24171. });
  24172. var ___cxx_global_var_init_209 = Module["___cxx_global_var_init_209"] = (function() {
  24173. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24174. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24175. return Module["asm"]["___cxx_global_var_init_209"].apply(null, arguments);
  24176. });
  24177. var ___cxx_global_var_init_21 = Module["___cxx_global_var_init_21"] = (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 Module["asm"]["___cxx_global_var_init_21"].apply(null, arguments);
  24181. });
  24182. var ___cxx_global_var_init_210 = Module["___cxx_global_var_init_210"] = (function() {
  24183. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24184. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24185. return Module["asm"]["___cxx_global_var_init_210"].apply(null, arguments);
  24186. });
  24187. var ___cxx_global_var_init_210_8387 = Module["___cxx_global_var_init_210_8387"] = (function() {
  24188. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24189. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24190. return Module["asm"]["___cxx_global_var_init_210_8387"].apply(null, arguments);
  24191. });
  24192. var ___cxx_global_var_init_211 = Module["___cxx_global_var_init_211"] = (function() {
  24193. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24194. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24195. return Module["asm"]["___cxx_global_var_init_211"].apply(null, arguments);
  24196. });
  24197. var ___cxx_global_var_init_211_8388 = Module["___cxx_global_var_init_211_8388"] = (function() {
  24198. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24199. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24200. return Module["asm"]["___cxx_global_var_init_211_8388"].apply(null, arguments);
  24201. });
  24202. var ___cxx_global_var_init_212 = Module["___cxx_global_var_init_212"] = (function() {
  24203. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24204. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24205. return Module["asm"]["___cxx_global_var_init_212"].apply(null, arguments);
  24206. });
  24207. var ___cxx_global_var_init_213 = Module["___cxx_global_var_init_213"] = (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 Module["asm"]["___cxx_global_var_init_213"].apply(null, arguments);
  24211. });
  24212. var ___cxx_global_var_init_214 = Module["___cxx_global_var_init_214"] = (function() {
  24213. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24214. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24215. return Module["asm"]["___cxx_global_var_init_214"].apply(null, arguments);
  24216. });
  24217. var ___cxx_global_var_init_215 = Module["___cxx_global_var_init_215"] = (function() {
  24218. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24219. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24220. return Module["asm"]["___cxx_global_var_init_215"].apply(null, arguments);
  24221. });
  24222. var ___cxx_global_var_init_216 = Module["___cxx_global_var_init_216"] = (function() {
  24223. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24224. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24225. return Module["asm"]["___cxx_global_var_init_216"].apply(null, arguments);
  24226. });
  24227. var ___cxx_global_var_init_217 = Module["___cxx_global_var_init_217"] = (function() {
  24228. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24229. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24230. return Module["asm"]["___cxx_global_var_init_217"].apply(null, arguments);
  24231. });
  24232. var ___cxx_global_var_init_218 = Module["___cxx_global_var_init_218"] = (function() {
  24233. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24234. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24235. return Module["asm"]["___cxx_global_var_init_218"].apply(null, arguments);
  24236. });
  24237. var ___cxx_global_var_init_219 = Module["___cxx_global_var_init_219"] = (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 Module["asm"]["___cxx_global_var_init_219"].apply(null, arguments);
  24241. });
  24242. var ___cxx_global_var_init_220 = Module["___cxx_global_var_init_220"] = (function() {
  24243. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24244. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24245. return Module["asm"]["___cxx_global_var_init_220"].apply(null, arguments);
  24246. });
  24247. var ___cxx_global_var_init_221 = Module["___cxx_global_var_init_221"] = (function() {
  24248. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24249. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24250. return Module["asm"]["___cxx_global_var_init_221"].apply(null, arguments);
  24251. });
  24252. var ___cxx_global_var_init_222 = Module["___cxx_global_var_init_222"] = (function() {
  24253. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24254. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24255. return Module["asm"]["___cxx_global_var_init_222"].apply(null, arguments);
  24256. });
  24257. var ___cxx_global_var_init_223 = Module["___cxx_global_var_init_223"] = (function() {
  24258. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24259. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24260. return Module["asm"]["___cxx_global_var_init_223"].apply(null, arguments);
  24261. });
  24262. var ___cxx_global_var_init_224 = Module["___cxx_global_var_init_224"] = (function() {
  24263. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24264. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24265. return Module["asm"]["___cxx_global_var_init_224"].apply(null, arguments);
  24266. });
  24267. var ___cxx_global_var_init_225 = Module["___cxx_global_var_init_225"] = (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 Module["asm"]["___cxx_global_var_init_225"].apply(null, arguments);
  24271. });
  24272. var ___cxx_global_var_init_226 = Module["___cxx_global_var_init_226"] = (function() {
  24273. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24274. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24275. return Module["asm"]["___cxx_global_var_init_226"].apply(null, arguments);
  24276. });
  24277. var ___cxx_global_var_init_227 = Module["___cxx_global_var_init_227"] = (function() {
  24278. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24279. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24280. return Module["asm"]["___cxx_global_var_init_227"].apply(null, arguments);
  24281. });
  24282. var ___cxx_global_var_init_25 = Module["___cxx_global_var_init_25"] = (function() {
  24283. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24284. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24285. return Module["asm"]["___cxx_global_var_init_25"].apply(null, arguments);
  24286. });
  24287. var ___cxx_global_var_init_26 = Module["___cxx_global_var_init_26"] = (function() {
  24288. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24289. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24290. return Module["asm"]["___cxx_global_var_init_26"].apply(null, arguments);
  24291. });
  24292. var ___cxx_global_var_init_27 = Module["___cxx_global_var_init_27"] = (function() {
  24293. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24294. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24295. return Module["asm"]["___cxx_global_var_init_27"].apply(null, arguments);
  24296. });
  24297. var ___cxx_global_var_init_27_5703 = Module["___cxx_global_var_init_27_5703"] = (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 Module["asm"]["___cxx_global_var_init_27_5703"].apply(null, arguments);
  24301. });
  24302. var ___cxx_global_var_init_27_9088 = Module["___cxx_global_var_init_27_9088"] = (function() {
  24303. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24304. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24305. return Module["asm"]["___cxx_global_var_init_27_9088"].apply(null, arguments);
  24306. });
  24307. var ___cxx_global_var_init_28 = Module["___cxx_global_var_init_28"] = (function() {
  24308. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24309. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24310. return Module["asm"]["___cxx_global_var_init_28"].apply(null, arguments);
  24311. });
  24312. var ___cxx_global_var_init_28_7239 = Module["___cxx_global_var_init_28_7239"] = (function() {
  24313. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24314. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24315. return Module["asm"]["___cxx_global_var_init_28_7239"].apply(null, arguments);
  24316. });
  24317. var ___cxx_global_var_init_29_4254 = Module["___cxx_global_var_init_29_4254"] = (function() {
  24318. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24319. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24320. return Module["asm"]["___cxx_global_var_init_29_4254"].apply(null, arguments);
  24321. });
  24322. var ___cxx_global_var_init_29_7240 = Module["___cxx_global_var_init_29_7240"] = (function() {
  24323. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24324. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24325. return Module["asm"]["___cxx_global_var_init_29_7240"].apply(null, arguments);
  24326. });
  24327. var ___cxx_global_var_init_29_9089 = Module["___cxx_global_var_init_29_9089"] = (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 Module["asm"]["___cxx_global_var_init_29_9089"].apply(null, arguments);
  24331. });
  24332. var ___cxx_global_var_init_2_9528 = Module["___cxx_global_var_init_2_9528"] = (function() {
  24333. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24334. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24335. return Module["asm"]["___cxx_global_var_init_2_9528"].apply(null, arguments);
  24336. });
  24337. var ___cxx_global_var_init_2_9864 = Module["___cxx_global_var_init_2_9864"] = (function() {
  24338. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24339. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24340. return Module["asm"]["___cxx_global_var_init_2_9864"].apply(null, arguments);
  24341. });
  24342. var ___cxx_global_var_init_30 = Module["___cxx_global_var_init_30"] = (function() {
  24343. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24344. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24345. return Module["asm"]["___cxx_global_var_init_30"].apply(null, arguments);
  24346. });
  24347. var ___cxx_global_var_init_30_4255 = Module["___cxx_global_var_init_30_4255"] = (function() {
  24348. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24349. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24350. return Module["asm"]["___cxx_global_var_init_30_4255"].apply(null, arguments);
  24351. });
  24352. var ___cxx_global_var_init_31_4256 = Module["___cxx_global_var_init_31_4256"] = (function() {
  24353. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24354. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24355. return Module["asm"]["___cxx_global_var_init_31_4256"].apply(null, arguments);
  24356. });
  24357. var ___cxx_global_var_init_31_8788 = Module["___cxx_global_var_init_31_8788"] = (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 Module["asm"]["___cxx_global_var_init_31_8788"].apply(null, arguments);
  24361. });
  24362. var ___cxx_global_var_init_31_9090 = Module["___cxx_global_var_init_31_9090"] = (function() {
  24363. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24364. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24365. return Module["asm"]["___cxx_global_var_init_31_9090"].apply(null, arguments);
  24366. });
  24367. var ___cxx_global_var_init_32 = Module["___cxx_global_var_init_32"] = (function() {
  24368. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24369. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24370. return Module["asm"]["___cxx_global_var_init_32"].apply(null, arguments);
  24371. });
  24372. var ___cxx_global_var_init_33_10225 = Module["___cxx_global_var_init_33_10225"] = (function() {
  24373. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24374. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24375. return Module["asm"]["___cxx_global_var_init_33_10225"].apply(null, arguments);
  24376. });
  24377. var ___cxx_global_var_init_33_8789 = Module["___cxx_global_var_init_33_8789"] = (function() {
  24378. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24379. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24380. return Module["asm"]["___cxx_global_var_init_33_8789"].apply(null, arguments);
  24381. });
  24382. var ___cxx_global_var_init_34 = Module["___cxx_global_var_init_34"] = (function() {
  24383. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24384. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24385. return Module["asm"]["___cxx_global_var_init_34"].apply(null, arguments);
  24386. });
  24387. var ___cxx_global_var_init_34_8790 = Module["___cxx_global_var_init_34_8790"] = (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 Module["asm"]["___cxx_global_var_init_34_8790"].apply(null, arguments);
  24391. });
  24392. var ___cxx_global_var_init_34_9202 = Module["___cxx_global_var_init_34_9202"] = (function() {
  24393. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24394. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24395. return Module["asm"]["___cxx_global_var_init_34_9202"].apply(null, arguments);
  24396. });
  24397. var ___cxx_global_var_init_35 = Module["___cxx_global_var_init_35"] = (function() {
  24398. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24399. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24400. return Module["asm"]["___cxx_global_var_init_35"].apply(null, arguments);
  24401. });
  24402. var ___cxx_global_var_init_35_7727 = Module["___cxx_global_var_init_35_7727"] = (function() {
  24403. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24404. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24405. return Module["asm"]["___cxx_global_var_init_35_7727"].apply(null, arguments);
  24406. });
  24407. var ___cxx_global_var_init_36 = Module["___cxx_global_var_init_36"] = (function() {
  24408. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24409. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24410. return Module["asm"]["___cxx_global_var_init_36"].apply(null, arguments);
  24411. });
  24412. var ___cxx_global_var_init_36_7728 = Module["___cxx_global_var_init_36_7728"] = (function() {
  24413. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24414. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24415. return Module["asm"]["___cxx_global_var_init_36_7728"].apply(null, arguments);
  24416. });
  24417. var ___cxx_global_var_init_37 = Module["___cxx_global_var_init_37"] = (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 Module["asm"]["___cxx_global_var_init_37"].apply(null, arguments);
  24421. });
  24422. var ___cxx_global_var_init_38 = Module["___cxx_global_var_init_38"] = (function() {
  24423. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24424. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24425. return Module["asm"]["___cxx_global_var_init_38"].apply(null, arguments);
  24426. });
  24427. var ___cxx_global_var_init_39 = Module["___cxx_global_var_init_39"] = (function() {
  24428. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24429. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24430. return Module["asm"]["___cxx_global_var_init_39"].apply(null, arguments);
  24431. });
  24432. var ___cxx_global_var_init_3_27 = Module["___cxx_global_var_init_3_27"] = (function() {
  24433. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24434. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24435. return Module["asm"]["___cxx_global_var_init_3_27"].apply(null, arguments);
  24436. });
  24437. var ___cxx_global_var_init_3_4490 = Module["___cxx_global_var_init_3_4490"] = (function() {
  24438. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24439. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24440. return Module["asm"]["___cxx_global_var_init_3_4490"].apply(null, arguments);
  24441. });
  24442. var ___cxx_global_var_init_3_9865 = Module["___cxx_global_var_init_3_9865"] = (function() {
  24443. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24444. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24445. return Module["asm"]["___cxx_global_var_init_3_9865"].apply(null, arguments);
  24446. });
  24447. var ___cxx_global_var_init_40 = Module["___cxx_global_var_init_40"] = (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 Module["asm"]["___cxx_global_var_init_40"].apply(null, arguments);
  24451. });
  24452. var ___cxx_global_var_init_41 = Module["___cxx_global_var_init_41"] = (function() {
  24453. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24454. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24455. return Module["asm"]["___cxx_global_var_init_41"].apply(null, arguments);
  24456. });
  24457. var ___cxx_global_var_init_4115 = Module["___cxx_global_var_init_4115"] = (function() {
  24458. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24459. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24460. return Module["asm"]["___cxx_global_var_init_4115"].apply(null, arguments);
  24461. });
  24462. var ___cxx_global_var_init_41_13464 = Module["___cxx_global_var_init_41_13464"] = (function() {
  24463. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24464. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24465. return Module["asm"]["___cxx_global_var_init_41_13464"].apply(null, arguments);
  24466. });
  24467. var ___cxx_global_var_init_42 = Module["___cxx_global_var_init_42"] = (function() {
  24468. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24469. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24470. return Module["asm"]["___cxx_global_var_init_42"].apply(null, arguments);
  24471. });
  24472. var ___cxx_global_var_init_43 = Module["___cxx_global_var_init_43"] = (function() {
  24473. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24474. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24475. return Module["asm"]["___cxx_global_var_init_43"].apply(null, arguments);
  24476. });
  24477. var ___cxx_global_var_init_43_4837 = Module["___cxx_global_var_init_43_4837"] = (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 Module["asm"]["___cxx_global_var_init_43_4837"].apply(null, arguments);
  24481. });
  24482. var ___cxx_global_var_init_44 = Module["___cxx_global_var_init_44"] = (function() {
  24483. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24484. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24485. return Module["asm"]["___cxx_global_var_init_44"].apply(null, arguments);
  24486. });
  24487. var ___cxx_global_var_init_44_7946 = Module["___cxx_global_var_init_44_7946"] = (function() {
  24488. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24489. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24490. return Module["asm"]["___cxx_global_var_init_44_7946"].apply(null, arguments);
  24491. });
  24492. var ___cxx_global_var_init_45 = Module["___cxx_global_var_init_45"] = (function() {
  24493. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24494. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24495. return Module["asm"]["___cxx_global_var_init_45"].apply(null, arguments);
  24496. });
  24497. var ___cxx_global_var_init_46 = Module["___cxx_global_var_init_46"] = (function() {
  24498. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24499. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24500. return Module["asm"]["___cxx_global_var_init_46"].apply(null, arguments);
  24501. });
  24502. var ___cxx_global_var_init_46_8335 = Module["___cxx_global_var_init_46_8335"] = (function() {
  24503. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24504. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24505. return Module["asm"]["___cxx_global_var_init_46_8335"].apply(null, arguments);
  24506. });
  24507. var ___cxx_global_var_init_47 = Module["___cxx_global_var_init_47"] = (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 Module["asm"]["___cxx_global_var_init_47"].apply(null, arguments);
  24511. });
  24512. var ___cxx_global_var_init_47_12782 = Module["___cxx_global_var_init_47_12782"] = (function() {
  24513. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24514. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24515. return Module["asm"]["___cxx_global_var_init_47_12782"].apply(null, arguments);
  24516. });
  24517. var ___cxx_global_var_init_47_1315 = Module["___cxx_global_var_init_47_1315"] = (function() {
  24518. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24519. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24520. return Module["asm"]["___cxx_global_var_init_47_1315"].apply(null, arguments);
  24521. });
  24522. var ___cxx_global_var_init_47_8336 = Module["___cxx_global_var_init_47_8336"] = (function() {
  24523. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24524. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24525. return Module["asm"]["___cxx_global_var_init_47_8336"].apply(null, arguments);
  24526. });
  24527. var ___cxx_global_var_init_48 = Module["___cxx_global_var_init_48"] = (function() {
  24528. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24529. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24530. return Module["asm"]["___cxx_global_var_init_48"].apply(null, arguments);
  24531. });
  24532. var ___cxx_global_var_init_48_1316 = Module["___cxx_global_var_init_48_1316"] = (function() {
  24533. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24534. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24535. return Module["asm"]["___cxx_global_var_init_48_1316"].apply(null, arguments);
  24536. });
  24537. var ___cxx_global_var_init_48_8337 = Module["___cxx_global_var_init_48_8337"] = (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 Module["asm"]["___cxx_global_var_init_48_8337"].apply(null, arguments);
  24541. });
  24542. var ___cxx_global_var_init_49 = Module["___cxx_global_var_init_49"] = (function() {
  24543. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24544. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24545. return Module["asm"]["___cxx_global_var_init_49"].apply(null, arguments);
  24546. });
  24547. var ___cxx_global_var_init_49_8338 = Module["___cxx_global_var_init_49_8338"] = (function() {
  24548. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24549. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24550. return Module["asm"]["___cxx_global_var_init_49_8338"].apply(null, arguments);
  24551. });
  24552. var ___cxx_global_var_init_4_7142 = Module["___cxx_global_var_init_4_7142"] = (function() {
  24553. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24554. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24555. return Module["asm"]["___cxx_global_var_init_4_7142"].apply(null, arguments);
  24556. });
  24557. var ___cxx_global_var_init_4_9866 = Module["___cxx_global_var_init_4_9866"] = (function() {
  24558. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24559. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24560. return Module["asm"]["___cxx_global_var_init_4_9866"].apply(null, arguments);
  24561. });
  24562. var ___cxx_global_var_init_5 = Module["___cxx_global_var_init_5"] = (function() {
  24563. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24564. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24565. return Module["asm"]["___cxx_global_var_init_5"].apply(null, arguments);
  24566. });
  24567. var ___cxx_global_var_init_50 = Module["___cxx_global_var_init_50"] = (function() {
  24568. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24569. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24570. return Module["asm"]["___cxx_global_var_init_50"].apply(null, arguments);
  24571. });
  24572. var ___cxx_global_var_init_51 = Module["___cxx_global_var_init_51"] = (function() {
  24573. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24574. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24575. return Module["asm"]["___cxx_global_var_init_51"].apply(null, arguments);
  24576. });
  24577. var ___cxx_global_var_init_52 = Module["___cxx_global_var_init_52"] = (function() {
  24578. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24579. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24580. return Module["asm"]["___cxx_global_var_init_52"].apply(null, arguments);
  24581. });
  24582. var ___cxx_global_var_init_53 = Module["___cxx_global_var_init_53"] = (function() {
  24583. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24584. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24585. return Module["asm"]["___cxx_global_var_init_53"].apply(null, arguments);
  24586. });
  24587. var ___cxx_global_var_init_53_8339 = Module["___cxx_global_var_init_53_8339"] = (function() {
  24588. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24589. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24590. return Module["asm"]["___cxx_global_var_init_53_8339"].apply(null, arguments);
  24591. });
  24592. var ___cxx_global_var_init_54 = Module["___cxx_global_var_init_54"] = (function() {
  24593. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24594. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24595. return Module["asm"]["___cxx_global_var_init_54"].apply(null, arguments);
  24596. });
  24597. var ___cxx_global_var_init_55 = Module["___cxx_global_var_init_55"] = (function() {
  24598. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24599. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24600. return Module["asm"]["___cxx_global_var_init_55"].apply(null, arguments);
  24601. });
  24602. var ___cxx_global_var_init_55_9709 = Module["___cxx_global_var_init_55_9709"] = (function() {
  24603. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24604. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24605. return Module["asm"]["___cxx_global_var_init_55_9709"].apply(null, arguments);
  24606. });
  24607. var ___cxx_global_var_init_56 = Module["___cxx_global_var_init_56"] = (function() {
  24608. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24609. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24610. return Module["asm"]["___cxx_global_var_init_56"].apply(null, arguments);
  24611. });
  24612. var ___cxx_global_var_init_57 = Module["___cxx_global_var_init_57"] = (function() {
  24613. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24614. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24615. return Module["asm"]["___cxx_global_var_init_57"].apply(null, arguments);
  24616. });
  24617. var ___cxx_global_var_init_58 = Module["___cxx_global_var_init_58"] = (function() {
  24618. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24619. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24620. return Module["asm"]["___cxx_global_var_init_58"].apply(null, arguments);
  24621. });
  24622. var ___cxx_global_var_init_58_4838 = Module["___cxx_global_var_init_58_4838"] = (function() {
  24623. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24624. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24625. return Module["asm"]["___cxx_global_var_init_58_4838"].apply(null, arguments);
  24626. });
  24627. var ___cxx_global_var_init_58_9710 = Module["___cxx_global_var_init_58_9710"] = (function() {
  24628. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24629. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24630. return Module["asm"]["___cxx_global_var_init_58_9710"].apply(null, arguments);
  24631. });
  24632. var ___cxx_global_var_init_59 = Module["___cxx_global_var_init_59"] = (function() {
  24633. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24634. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24635. return Module["asm"]["___cxx_global_var_init_59"].apply(null, arguments);
  24636. });
  24637. var ___cxx_global_var_init_59_4839 = Module["___cxx_global_var_init_59_4839"] = (function() {
  24638. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24639. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24640. return Module["asm"]["___cxx_global_var_init_59_4839"].apply(null, arguments);
  24641. });
  24642. var ___cxx_global_var_init_59_9711 = Module["___cxx_global_var_init_59_9711"] = (function() {
  24643. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24644. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24645. return Module["asm"]["___cxx_global_var_init_59_9711"].apply(null, arguments);
  24646. });
  24647. var ___cxx_global_var_init_5_9867 = Module["___cxx_global_var_init_5_9867"] = (function() {
  24648. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24649. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24650. return Module["asm"]["___cxx_global_var_init_5_9867"].apply(null, arguments);
  24651. });
  24652. var ___cxx_global_var_init_60 = Module["___cxx_global_var_init_60"] = (function() {
  24653. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24654. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24655. return Module["asm"]["___cxx_global_var_init_60"].apply(null, arguments);
  24656. });
  24657. var ___cxx_global_var_init_60_4840 = Module["___cxx_global_var_init_60_4840"] = (function() {
  24658. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24659. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24660. return Module["asm"]["___cxx_global_var_init_60_4840"].apply(null, arguments);
  24661. });
  24662. var ___cxx_global_var_init_60_9712 = Module["___cxx_global_var_init_60_9712"] = (function() {
  24663. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24664. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24665. return Module["asm"]["___cxx_global_var_init_60_9712"].apply(null, arguments);
  24666. });
  24667. var ___cxx_global_var_init_61 = Module["___cxx_global_var_init_61"] = (function() {
  24668. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24669. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24670. return Module["asm"]["___cxx_global_var_init_61"].apply(null, arguments);
  24671. });
  24672. var ___cxx_global_var_init_61_9713 = Module["___cxx_global_var_init_61_9713"] = (function() {
  24673. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24674. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24675. return Module["asm"]["___cxx_global_var_init_61_9713"].apply(null, arguments);
  24676. });
  24677. var ___cxx_global_var_init_63 = Module["___cxx_global_var_init_63"] = (function() {
  24678. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24679. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24680. return Module["asm"]["___cxx_global_var_init_63"].apply(null, arguments);
  24681. });
  24682. var ___cxx_global_var_init_67 = Module["___cxx_global_var_init_67"] = (function() {
  24683. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24684. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24685. return Module["asm"]["___cxx_global_var_init_67"].apply(null, arguments);
  24686. });
  24687. var ___cxx_global_var_init_6_4577 = Module["___cxx_global_var_init_6_4577"] = (function() {
  24688. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24689. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24690. return Module["asm"]["___cxx_global_var_init_6_4577"].apply(null, arguments);
  24691. });
  24692. var ___cxx_global_var_init_6_748 = Module["___cxx_global_var_init_6_748"] = (function() {
  24693. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24694. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24695. return Module["asm"]["___cxx_global_var_init_6_748"].apply(null, arguments);
  24696. });
  24697. var ___cxx_global_var_init_6_9868 = Module["___cxx_global_var_init_6_9868"] = (function() {
  24698. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24699. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24700. return Module["asm"]["___cxx_global_var_init_6_9868"].apply(null, arguments);
  24701. });
  24702. var ___cxx_global_var_init_7 = Module["___cxx_global_var_init_7"] = (function() {
  24703. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24704. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24705. return Module["asm"]["___cxx_global_var_init_7"].apply(null, arguments);
  24706. });
  24707. var ___cxx_global_var_init_71 = Module["___cxx_global_var_init_71"] = (function() {
  24708. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24709. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24710. return Module["asm"]["___cxx_global_var_init_71"].apply(null, arguments);
  24711. });
  24712. var ___cxx_global_var_init_78 = Module["___cxx_global_var_init_78"] = (function() {
  24713. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24714. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24715. return Module["asm"]["___cxx_global_var_init_78"].apply(null, arguments);
  24716. });
  24717. var ___cxx_global_var_init_79 = Module["___cxx_global_var_init_79"] = (function() {
  24718. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24719. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24720. return Module["asm"]["___cxx_global_var_init_79"].apply(null, arguments);
  24721. });
  24722. var ___cxx_global_var_init_7_1313 = Module["___cxx_global_var_init_7_1313"] = (function() {
  24723. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24724. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24725. return Module["asm"]["___cxx_global_var_init_7_1313"].apply(null, arguments);
  24726. });
  24727. var ___cxx_global_var_init_7_4578 = Module["___cxx_global_var_init_7_4578"] = (function() {
  24728. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24729. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24730. return Module["asm"]["___cxx_global_var_init_7_4578"].apply(null, arguments);
  24731. });
  24732. var ___cxx_global_var_init_7_9869 = Module["___cxx_global_var_init_7_9869"] = (function() {
  24733. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24734. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24735. return Module["asm"]["___cxx_global_var_init_7_9869"].apply(null, arguments);
  24736. });
  24737. var ___cxx_global_var_init_8552 = Module["___cxx_global_var_init_8552"] = (function() {
  24738. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24739. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24740. return Module["asm"]["___cxx_global_var_init_8552"].apply(null, arguments);
  24741. });
  24742. var ___cxx_global_var_init_86 = Module["___cxx_global_var_init_86"] = (function() {
  24743. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24744. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24745. return Module["asm"]["___cxx_global_var_init_86"].apply(null, arguments);
  24746. });
  24747. var ___cxx_global_var_init_87 = Module["___cxx_global_var_init_87"] = (function() {
  24748. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24749. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24750. return Module["asm"]["___cxx_global_var_init_87"].apply(null, arguments);
  24751. });
  24752. var ___cxx_global_var_init_88 = Module["___cxx_global_var_init_88"] = (function() {
  24753. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24754. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24755. return Module["asm"]["___cxx_global_var_init_88"].apply(null, arguments);
  24756. });
  24757. var ___cxx_global_var_init_88_8675 = Module["___cxx_global_var_init_88_8675"] = (function() {
  24758. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24759. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24760. return Module["asm"]["___cxx_global_var_init_88_8675"].apply(null, arguments);
  24761. });
  24762. var ___cxx_global_var_init_8_4579 = Module["___cxx_global_var_init_8_4579"] = (function() {
  24763. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24764. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24765. return Module["asm"]["___cxx_global_var_init_8_4579"].apply(null, arguments);
  24766. });
  24767. var ___cxx_global_var_init_8_7080 = Module["___cxx_global_var_init_8_7080"] = (function() {
  24768. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24769. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24770. return Module["asm"]["___cxx_global_var_init_8_7080"].apply(null, arguments);
  24771. });
  24772. var ___cxx_global_var_init_8_9870 = Module["___cxx_global_var_init_8_9870"] = (function() {
  24773. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24774. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24775. return Module["asm"]["___cxx_global_var_init_8_9870"].apply(null, arguments);
  24776. });
  24777. var ___cxx_global_var_init_91 = Module["___cxx_global_var_init_91"] = (function() {
  24778. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24779. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24780. return Module["asm"]["___cxx_global_var_init_91"].apply(null, arguments);
  24781. });
  24782. var ___cxx_global_var_init_92 = Module["___cxx_global_var_init_92"] = (function() {
  24783. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24784. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24785. return Module["asm"]["___cxx_global_var_init_92"].apply(null, arguments);
  24786. });
  24787. var ___cxx_global_var_init_92_6304 = Module["___cxx_global_var_init_92_6304"] = (function() {
  24788. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24789. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24790. return Module["asm"]["___cxx_global_var_init_92_6304"].apply(null, arguments);
  24791. });
  24792. var ___cxx_global_var_init_93 = Module["___cxx_global_var_init_93"] = (function() {
  24793. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24794. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24795. return Module["asm"]["___cxx_global_var_init_93"].apply(null, arguments);
  24796. });
  24797. var ___cxx_global_var_init_93_6305 = Module["___cxx_global_var_init_93_6305"] = (function() {
  24798. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24799. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24800. return Module["asm"]["___cxx_global_var_init_93_6305"].apply(null, arguments);
  24801. });
  24802. var ___cxx_global_var_init_94 = Module["___cxx_global_var_init_94"] = (function() {
  24803. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24804. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24805. return Module["asm"]["___cxx_global_var_init_94"].apply(null, arguments);
  24806. });
  24807. var ___cxx_global_var_init_94_6306 = Module["___cxx_global_var_init_94_6306"] = (function() {
  24808. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24809. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24810. return Module["asm"]["___cxx_global_var_init_94_6306"].apply(null, arguments);
  24811. });
  24812. var ___cxx_global_var_init_95 = Module["___cxx_global_var_init_95"] = (function() {
  24813. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24814. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24815. return Module["asm"]["___cxx_global_var_init_95"].apply(null, arguments);
  24816. });
  24817. var ___cxx_global_var_init_9_4580 = Module["___cxx_global_var_init_9_4580"] = (function() {
  24818. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24819. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24820. return Module["asm"]["___cxx_global_var_init_9_4580"].apply(null, arguments);
  24821. });
  24822. var ___cxx_global_var_init_9_9871 = Module["___cxx_global_var_init_9_9871"] = (function() {
  24823. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24824. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24825. return Module["asm"]["___cxx_global_var_init_9_9871"].apply(null, arguments);
  24826. });
  24827. var ___emscripten_environ_constructor = Module["___emscripten_environ_constructor"] = (function() {
  24828. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24829. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24830. return Module["asm"]["___emscripten_environ_constructor"].apply(null, arguments);
  24831. });
  24832. var ___errno_location = Module["___errno_location"] = (function() {
  24833. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24834. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24835. return Module["asm"]["___errno_location"].apply(null, arguments);
  24836. });
  24837. var __get_daylight = Module["__get_daylight"] = (function() {
  24838. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24839. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24840. return Module["asm"]["__get_daylight"].apply(null, arguments);
  24841. });
  24842. var __get_environ = Module["__get_environ"] = (function() {
  24843. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24844. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24845. return Module["asm"]["__get_environ"].apply(null, arguments);
  24846. });
  24847. var __get_timezone = Module["__get_timezone"] = (function() {
  24848. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24849. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24850. return Module["asm"]["__get_timezone"].apply(null, arguments);
  24851. });
  24852. var __get_tzname = Module["__get_tzname"] = (function() {
  24853. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24854. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24855. return Module["asm"]["__get_tzname"].apply(null, arguments);
  24856. });
  24857. var _emscripten_replace_memory = Module["_emscripten_replace_memory"] = (function() {
  24858. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24859. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24860. return Module["asm"]["_emscripten_replace_memory"].apply(null, arguments);
  24861. });
  24862. var _fflush = Module["_fflush"] = (function() {
  24863. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24864. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24865. return Module["asm"]["_fflush"].apply(null, arguments);
  24866. });
  24867. var _free = Module["_free"] = (function() {
  24868. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24869. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24870. return Module["asm"]["_free"].apply(null, arguments);
  24871. });
  24872. var _htonl = Module["_htonl"] = (function() {
  24873. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24874. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24875. return Module["asm"]["_htonl"].apply(null, arguments);
  24876. });
  24877. var _htons = Module["_htons"] = (function() {
  24878. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24879. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24880. return Module["asm"]["_htons"].apply(null, arguments);
  24881. });
  24882. var _i64Add = Module["_i64Add"] = (function() {
  24883. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24884. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24885. return Module["asm"]["_i64Add"].apply(null, arguments);
  24886. });
  24887. var _llvm_bswap_i16 = Module["_llvm_bswap_i16"] = (function() {
  24888. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24889. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24890. return Module["asm"]["_llvm_bswap_i16"].apply(null, arguments);
  24891. });
  24892. var _llvm_bswap_i32 = Module["_llvm_bswap_i32"] = (function() {
  24893. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24894. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24895. return Module["asm"]["_llvm_bswap_i32"].apply(null, arguments);
  24896. });
  24897. var _llvm_ctlz_i64 = Module["_llvm_ctlz_i64"] = (function() {
  24898. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24899. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24900. return Module["asm"]["_llvm_ctlz_i64"].apply(null, arguments);
  24901. });
  24902. var _llvm_ctpop_i32 = Module["_llvm_ctpop_i32"] = (function() {
  24903. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24904. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24905. return Module["asm"]["_llvm_ctpop_i32"].apply(null, arguments);
  24906. });
  24907. var _llvm_maxnum_f32 = Module["_llvm_maxnum_f32"] = (function() {
  24908. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24909. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24910. return Module["asm"]["_llvm_maxnum_f32"].apply(null, arguments);
  24911. });
  24912. var _llvm_maxnum_f64 = Module["_llvm_maxnum_f64"] = (function() {
  24913. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24914. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24915. return Module["asm"]["_llvm_maxnum_f64"].apply(null, arguments);
  24916. });
  24917. var _llvm_minnum_f32 = Module["_llvm_minnum_f32"] = (function() {
  24918. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24919. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24920. return Module["asm"]["_llvm_minnum_f32"].apply(null, arguments);
  24921. });
  24922. var _llvm_round_f32 = Module["_llvm_round_f32"] = (function() {
  24923. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24924. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24925. return Module["asm"]["_llvm_round_f32"].apply(null, arguments);
  24926. });
  24927. var _main = Module["_main"] = (function() {
  24928. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24929. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24930. return Module["asm"]["_main"].apply(null, arguments);
  24931. });
  24932. var _malloc = Module["_malloc"] = (function() {
  24933. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24934. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24935. return Module["asm"]["_malloc"].apply(null, arguments);
  24936. });
  24937. var _memalign = Module["_memalign"] = (function() {
  24938. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24939. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24940. return Module["asm"]["_memalign"].apply(null, arguments);
  24941. });
  24942. var _memcpy = Module["_memcpy"] = (function() {
  24943. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24944. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24945. return Module["asm"]["_memcpy"].apply(null, arguments);
  24946. });
  24947. var _memmove = Module["_memmove"] = (function() {
  24948. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24949. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24950. return Module["asm"]["_memmove"].apply(null, arguments);
  24951. });
  24952. var _memset = Module["_memset"] = (function() {
  24953. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24954. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24955. return Module["asm"]["_memset"].apply(null, arguments);
  24956. });
  24957. var _ntohs = Module["_ntohs"] = (function() {
  24958. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24959. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24960. return Module["asm"]["_ntohs"].apply(null, arguments);
  24961. });
  24962. var _pthread_cond_broadcast = Module["_pthread_cond_broadcast"] = (function() {
  24963. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24964. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24965. return Module["asm"]["_pthread_cond_broadcast"].apply(null, arguments);
  24966. });
  24967. var _pthread_mutex_lock = Module["_pthread_mutex_lock"] = (function() {
  24968. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24969. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24970. return Module["asm"]["_pthread_mutex_lock"].apply(null, arguments);
  24971. });
  24972. var _pthread_mutex_unlock = Module["_pthread_mutex_unlock"] = (function() {
  24973. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24974. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24975. return Module["asm"]["_pthread_mutex_unlock"].apply(null, arguments);
  24976. });
  24977. var _realloc = Module["_realloc"] = (function() {
  24978. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24979. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24980. return Module["asm"]["_realloc"].apply(null, arguments);
  24981. });
  24982. var _sbrk = Module["_sbrk"] = (function() {
  24983. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24984. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24985. return Module["asm"]["_sbrk"].apply(null, arguments);
  24986. });
  24987. var _strlen = Module["_strlen"] = (function() {
  24988. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24989. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24990. return Module["asm"]["_strlen"].apply(null, arguments);
  24991. });
  24992. var establishStackSpace = Module["establishStackSpace"] = (function() {
  24993. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24994. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24995. return Module["asm"]["establishStackSpace"].apply(null, arguments);
  24996. });
  24997. var getTempRet0 = Module["getTempRet0"] = (function() {
  24998. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24999. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25000. return Module["asm"]["getTempRet0"].apply(null, arguments);
  25001. });
  25002. var runPostSets = Module["runPostSets"] = (function() {
  25003. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25004. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25005. return Module["asm"]["runPostSets"].apply(null, arguments);
  25006. });
  25007. var setTempRet0 = Module["setTempRet0"] = (function() {
  25008. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25009. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25010. return Module["asm"]["setTempRet0"].apply(null, arguments);
  25011. });
  25012. var setThrew = Module["setThrew"] = (function() {
  25013. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25014. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25015. return Module["asm"]["setThrew"].apply(null, arguments);
  25016. });
  25017. var stackAlloc = Module["stackAlloc"] = (function() {
  25018. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25019. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25020. return Module["asm"]["stackAlloc"].apply(null, arguments);
  25021. });
  25022. var stackRestore = Module["stackRestore"] = (function() {
  25023. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25024. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25025. return Module["asm"]["stackRestore"].apply(null, arguments);
  25026. });
  25027. var stackSave = Module["stackSave"] = (function() {
  25028. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25029. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25030. return Module["asm"]["stackSave"].apply(null, arguments);
  25031. });
  25032. var dynCall_dddi = Module["dynCall_dddi"] = (function() {
  25033. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25034. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25035. return Module["asm"]["dynCall_dddi"].apply(null, arguments);
  25036. });
  25037. var dynCall_ddi = Module["dynCall_ddi"] = (function() {
  25038. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25039. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25040. return Module["asm"]["dynCall_ddi"].apply(null, arguments);
  25041. });
  25042. var dynCall_dfi = Module["dynCall_dfi"] = (function() {
  25043. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25044. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25045. return Module["asm"]["dynCall_dfi"].apply(null, arguments);
  25046. });
  25047. var dynCall_di = Module["dynCall_di"] = (function() {
  25048. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25049. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25050. return Module["asm"]["dynCall_di"].apply(null, arguments);
  25051. });
  25052. var dynCall_diddi = Module["dynCall_diddi"] = (function() {
  25053. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25054. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25055. return Module["asm"]["dynCall_diddi"].apply(null, arguments);
  25056. });
  25057. var dynCall_didi = Module["dynCall_didi"] = (function() {
  25058. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25059. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25060. return Module["asm"]["dynCall_didi"].apply(null, arguments);
  25061. });
  25062. var dynCall_dii = Module["dynCall_dii"] = (function() {
  25063. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25064. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25065. return Module["asm"]["dynCall_dii"].apply(null, arguments);
  25066. });
  25067. var dynCall_diii = Module["dynCall_diii"] = (function() {
  25068. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25069. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25070. return Module["asm"]["dynCall_diii"].apply(null, arguments);
  25071. });
  25072. var dynCall_diiii = Module["dynCall_diiii"] = (function() {
  25073. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25074. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25075. return Module["asm"]["dynCall_diiii"].apply(null, arguments);
  25076. });
  25077. var dynCall_dji = Module["dynCall_dji"] = (function() {
  25078. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25079. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25080. return Module["asm"]["dynCall_dji"].apply(null, arguments);
  25081. });
  25082. var dynCall_f = Module["dynCall_f"] = (function() {
  25083. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25084. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25085. return Module["asm"]["dynCall_f"].apply(null, arguments);
  25086. });
  25087. var dynCall_fdi = Module["dynCall_fdi"] = (function() {
  25088. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25089. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25090. return Module["asm"]["dynCall_fdi"].apply(null, arguments);
  25091. });
  25092. var dynCall_ff = Module["dynCall_ff"] = (function() {
  25093. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25094. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25095. return Module["asm"]["dynCall_ff"].apply(null, arguments);
  25096. });
  25097. var dynCall_fff = Module["dynCall_fff"] = (function() {
  25098. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25099. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25100. return Module["asm"]["dynCall_fff"].apply(null, arguments);
  25101. });
  25102. var dynCall_ffffi = Module["dynCall_ffffi"] = (function() {
  25103. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25104. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25105. return Module["asm"]["dynCall_ffffi"].apply(null, arguments);
  25106. });
  25107. var dynCall_fffi = Module["dynCall_fffi"] = (function() {
  25108. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25109. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25110. return Module["asm"]["dynCall_fffi"].apply(null, arguments);
  25111. });
  25112. var dynCall_fffifffi = Module["dynCall_fffifffi"] = (function() {
  25113. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25114. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25115. return Module["asm"]["dynCall_fffifffi"].apply(null, arguments);
  25116. });
  25117. var dynCall_ffi = Module["dynCall_ffi"] = (function() {
  25118. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25119. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25120. return Module["asm"]["dynCall_ffi"].apply(null, arguments);
  25121. });
  25122. var dynCall_fi = Module["dynCall_fi"] = (function() {
  25123. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25124. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25125. return Module["asm"]["dynCall_fi"].apply(null, arguments);
  25126. });
  25127. var dynCall_fif = Module["dynCall_fif"] = (function() {
  25128. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25129. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25130. return Module["asm"]["dynCall_fif"].apply(null, arguments);
  25131. });
  25132. var dynCall_fiff = Module["dynCall_fiff"] = (function() {
  25133. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25134. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25135. return Module["asm"]["dynCall_fiff"].apply(null, arguments);
  25136. });
  25137. var dynCall_fifffi = Module["dynCall_fifffi"] = (function() {
  25138. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25139. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25140. return Module["asm"]["dynCall_fifffi"].apply(null, arguments);
  25141. });
  25142. var dynCall_fiffi = Module["dynCall_fiffi"] = (function() {
  25143. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25144. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25145. return Module["asm"]["dynCall_fiffi"].apply(null, arguments);
  25146. });
  25147. var dynCall_fifi = Module["dynCall_fifi"] = (function() {
  25148. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25149. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25150. return Module["asm"]["dynCall_fifi"].apply(null, arguments);
  25151. });
  25152. var dynCall_fifii = Module["dynCall_fifii"] = (function() {
  25153. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25154. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25155. return Module["asm"]["dynCall_fifii"].apply(null, arguments);
  25156. });
  25157. var dynCall_fii = Module["dynCall_fii"] = (function() {
  25158. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25159. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25160. return Module["asm"]["dynCall_fii"].apply(null, arguments);
  25161. });
  25162. var dynCall_fiif = Module["dynCall_fiif"] = (function() {
  25163. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25164. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25165. return Module["asm"]["dynCall_fiif"].apply(null, arguments);
  25166. });
  25167. var dynCall_fiifi = Module["dynCall_fiifi"] = (function() {
  25168. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25169. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25170. return Module["asm"]["dynCall_fiifi"].apply(null, arguments);
  25171. });
  25172. var dynCall_fiifii = Module["dynCall_fiifii"] = (function() {
  25173. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25174. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25175. return Module["asm"]["dynCall_fiifii"].apply(null, arguments);
  25176. });
  25177. var dynCall_fiii = Module["dynCall_fiii"] = (function() {
  25178. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25179. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25180. return Module["asm"]["dynCall_fiii"].apply(null, arguments);
  25181. });
  25182. var dynCall_fiiii = Module["dynCall_fiiii"] = (function() {
  25183. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25184. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25185. return Module["asm"]["dynCall_fiiii"].apply(null, arguments);
  25186. });
  25187. var dynCall_fiiiiiifiifif = Module["dynCall_fiiiiiifiifif"] = (function() {
  25188. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25189. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25190. return Module["asm"]["dynCall_fiiiiiifiifif"].apply(null, arguments);
  25191. });
  25192. var dynCall_fiiiiiifiiiif = Module["dynCall_fiiiiiifiiiif"] = (function() {
  25193. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25194. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25195. return Module["asm"]["dynCall_fiiiiiifiiiif"].apply(null, arguments);
  25196. });
  25197. var dynCall_fji = Module["dynCall_fji"] = (function() {
  25198. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25199. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25200. return Module["asm"]["dynCall_fji"].apply(null, arguments);
  25201. });
  25202. var dynCall_i = Module["dynCall_i"] = (function() {
  25203. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25204. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25205. return Module["asm"]["dynCall_i"].apply(null, arguments);
  25206. });
  25207. var dynCall_idi = Module["dynCall_idi"] = (function() {
  25208. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25209. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25210. return Module["asm"]["dynCall_idi"].apply(null, arguments);
  25211. });
  25212. var dynCall_idiii = Module["dynCall_idiii"] = (function() {
  25213. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25214. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25215. return Module["asm"]["dynCall_idiii"].apply(null, arguments);
  25216. });
  25217. var dynCall_ifffi = Module["dynCall_ifffi"] = (function() {
  25218. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25219. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25220. return Module["asm"]["dynCall_ifffi"].apply(null, arguments);
  25221. });
  25222. var dynCall_iffi = Module["dynCall_iffi"] = (function() {
  25223. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25224. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25225. return Module["asm"]["dynCall_iffi"].apply(null, arguments);
  25226. });
  25227. var dynCall_ifi = Module["dynCall_ifi"] = (function() {
  25228. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25229. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25230. return Module["asm"]["dynCall_ifi"].apply(null, arguments);
  25231. });
  25232. var dynCall_ifiii = Module["dynCall_ifiii"] = (function() {
  25233. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25234. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25235. return Module["asm"]["dynCall_ifiii"].apply(null, arguments);
  25236. });
  25237. var dynCall_ii = Module["dynCall_ii"] = (function() {
  25238. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25239. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25240. return Module["asm"]["dynCall_ii"].apply(null, arguments);
  25241. });
  25242. var dynCall_iidi = Module["dynCall_iidi"] = (function() {
  25243. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25244. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25245. return Module["asm"]["dynCall_iidi"].apply(null, arguments);
  25246. });
  25247. var dynCall_iidii = Module["dynCall_iidii"] = (function() {
  25248. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25249. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25250. return Module["asm"]["dynCall_iidii"].apply(null, arguments);
  25251. });
  25252. var dynCall_iif = Module["dynCall_iif"] = (function() {
  25253. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25254. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25255. return Module["asm"]["dynCall_iif"].apply(null, arguments);
  25256. });
  25257. var dynCall_iifff = Module["dynCall_iifff"] = (function() {
  25258. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25259. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25260. return Module["asm"]["dynCall_iifff"].apply(null, arguments);
  25261. });
  25262. var dynCall_iifffi = Module["dynCall_iifffi"] = (function() {
  25263. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25264. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25265. return Module["asm"]["dynCall_iifffi"].apply(null, arguments);
  25266. });
  25267. var dynCall_iiffi = Module["dynCall_iiffi"] = (function() {
  25268. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25269. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25270. return Module["asm"]["dynCall_iiffi"].apply(null, arguments);
  25271. });
  25272. var dynCall_iifi = Module["dynCall_iifi"] = (function() {
  25273. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25274. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25275. return Module["asm"]["dynCall_iifi"].apply(null, arguments);
  25276. });
  25277. var dynCall_iifii = Module["dynCall_iifii"] = (function() {
  25278. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25279. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25280. return Module["asm"]["dynCall_iifii"].apply(null, arguments);
  25281. });
  25282. var dynCall_iifiii = Module["dynCall_iifiii"] = (function() {
  25283. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25284. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25285. return Module["asm"]["dynCall_iifiii"].apply(null, arguments);
  25286. });
  25287. var dynCall_iifiiiijii = Module["dynCall_iifiiiijii"] = (function() {
  25288. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25289. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25290. return Module["asm"]["dynCall_iifiiiijii"].apply(null, arguments);
  25291. });
  25292. var dynCall_iii = Module["dynCall_iii"] = (function() {
  25293. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25294. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25295. return Module["asm"]["dynCall_iii"].apply(null, arguments);
  25296. });
  25297. var dynCall_iiif = Module["dynCall_iiif"] = (function() {
  25298. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25299. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25300. return Module["asm"]["dynCall_iiif"].apply(null, arguments);
  25301. });
  25302. var dynCall_iiiff = Module["dynCall_iiiff"] = (function() {
  25303. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25304. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25305. return Module["asm"]["dynCall_iiiff"].apply(null, arguments);
  25306. });
  25307. var dynCall_iiifi = Module["dynCall_iiifi"] = (function() {
  25308. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25309. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25310. return Module["asm"]["dynCall_iiifi"].apply(null, arguments);
  25311. });
  25312. var dynCall_iiifii = Module["dynCall_iiifii"] = (function() {
  25313. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25314. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25315. return Module["asm"]["dynCall_iiifii"].apply(null, arguments);
  25316. });
  25317. var dynCall_iiifiii = Module["dynCall_iiifiii"] = (function() {
  25318. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25319. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25320. return Module["asm"]["dynCall_iiifiii"].apply(null, arguments);
  25321. });
  25322. var dynCall_iiifiiii = Module["dynCall_iiifiiii"] = (function() {
  25323. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25324. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25325. return Module["asm"]["dynCall_iiifiiii"].apply(null, arguments);
  25326. });
  25327. var dynCall_iiii = Module["dynCall_iiii"] = (function() {
  25328. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25329. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25330. return Module["asm"]["dynCall_iiii"].apply(null, arguments);
  25331. });
  25332. var dynCall_iiiifffffi = Module["dynCall_iiiifffffi"] = (function() {
  25333. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25334. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25335. return Module["asm"]["dynCall_iiiifffffi"].apply(null, arguments);
  25336. });
  25337. var dynCall_iiiifffffii = Module["dynCall_iiiifffffii"] = (function() {
  25338. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25339. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25340. return Module["asm"]["dynCall_iiiifffffii"].apply(null, arguments);
  25341. });
  25342. var dynCall_iiiifffiii = Module["dynCall_iiiifffiii"] = (function() {
  25343. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25344. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25345. return Module["asm"]["dynCall_iiiifffiii"].apply(null, arguments);
  25346. });
  25347. var dynCall_iiiifi = Module["dynCall_iiiifi"] = (function() {
  25348. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25349. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25350. return Module["asm"]["dynCall_iiiifi"].apply(null, arguments);
  25351. });
  25352. var dynCall_iiiifii = Module["dynCall_iiiifii"] = (function() {
  25353. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25354. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25355. return Module["asm"]["dynCall_iiiifii"].apply(null, arguments);
  25356. });
  25357. var dynCall_iiiifiii = Module["dynCall_iiiifiii"] = (function() {
  25358. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25359. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25360. return Module["asm"]["dynCall_iiiifiii"].apply(null, arguments);
  25361. });
  25362. var dynCall_iiiifiiii = Module["dynCall_iiiifiiii"] = (function() {
  25363. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25364. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25365. return Module["asm"]["dynCall_iiiifiiii"].apply(null, arguments);
  25366. });
  25367. var dynCall_iiiifiiiii = Module["dynCall_iiiifiiiii"] = (function() {
  25368. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25369. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25370. return Module["asm"]["dynCall_iiiifiiiii"].apply(null, arguments);
  25371. });
  25372. var dynCall_iiiii = Module["dynCall_iiiii"] = (function() {
  25373. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25374. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25375. return Module["asm"]["dynCall_iiiii"].apply(null, arguments);
  25376. });
  25377. var dynCall_iiiiifiii = Module["dynCall_iiiiifiii"] = (function() {
  25378. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25379. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25380. return Module["asm"]["dynCall_iiiiifiii"].apply(null, arguments);
  25381. });
  25382. var dynCall_iiiiifiiiiif = Module["dynCall_iiiiifiiiiif"] = (function() {
  25383. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25384. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25385. return Module["asm"]["dynCall_iiiiifiiiiif"].apply(null, arguments);
  25386. });
  25387. var dynCall_iiiiii = Module["dynCall_iiiiii"] = (function() {
  25388. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25389. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25390. return Module["asm"]["dynCall_iiiiii"].apply(null, arguments);
  25391. });
  25392. var dynCall_iiiiiifff = Module["dynCall_iiiiiifff"] = (function() {
  25393. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25394. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25395. return Module["asm"]["dynCall_iiiiiifff"].apply(null, arguments);
  25396. });
  25397. var dynCall_iiiiiifffiiifiii = Module["dynCall_iiiiiifffiiifiii"] = (function() {
  25398. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25399. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25400. return Module["asm"]["dynCall_iiiiiifffiiifiii"].apply(null, arguments);
  25401. });
  25402. var dynCall_iiiiiiffiiiiiiiiiffffiii = Module["dynCall_iiiiiiffiiiiiiiiiffffiii"] = (function() {
  25403. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25404. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25405. return Module["asm"]["dynCall_iiiiiiffiiiiiiiiiffffiii"].apply(null, arguments);
  25406. });
  25407. var dynCall_iiiiiiffiiiiiiiiiffffiiii = Module["dynCall_iiiiiiffiiiiiiiiiffffiiii"] = (function() {
  25408. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25409. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25410. return Module["asm"]["dynCall_iiiiiiffiiiiiiiiiffffiiii"].apply(null, arguments);
  25411. });
  25412. var dynCall_iiiiiiffiiiiiiiiiiiiiii = Module["dynCall_iiiiiiffiiiiiiiiiiiiiii"] = (function() {
  25413. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25414. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25415. return Module["asm"]["dynCall_iiiiiiffiiiiiiiiiiiiiii"].apply(null, arguments);
  25416. });
  25417. var dynCall_iiiiiifiif = Module["dynCall_iiiiiifiif"] = (function() {
  25418. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25419. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25420. return Module["asm"]["dynCall_iiiiiifiif"].apply(null, arguments);
  25421. });
  25422. var dynCall_iiiiiifiii = Module["dynCall_iiiiiifiii"] = (function() {
  25423. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25424. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25425. return Module["asm"]["dynCall_iiiiiifiii"].apply(null, arguments);
  25426. });
  25427. var dynCall_iiiiiii = Module["dynCall_iiiiiii"] = (function() {
  25428. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25429. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25430. return Module["asm"]["dynCall_iiiiiii"].apply(null, arguments);
  25431. });
  25432. var dynCall_iiiiiiifiif = Module["dynCall_iiiiiiifiif"] = (function() {
  25433. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25434. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25435. return Module["asm"]["dynCall_iiiiiiifiif"].apply(null, arguments);
  25436. });
  25437. var dynCall_iiiiiiii = Module["dynCall_iiiiiiii"] = (function() {
  25438. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25439. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25440. return Module["asm"]["dynCall_iiiiiiii"].apply(null, arguments);
  25441. });
  25442. var dynCall_iiiiiiiii = Module["dynCall_iiiiiiiii"] = (function() {
  25443. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25444. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25445. return Module["asm"]["dynCall_iiiiiiiii"].apply(null, arguments);
  25446. });
  25447. var dynCall_iiiiiiiiii = Module["dynCall_iiiiiiiiii"] = (function() {
  25448. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25449. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25450. return Module["asm"]["dynCall_iiiiiiiiii"].apply(null, arguments);
  25451. });
  25452. var dynCall_iiiiiiiiiii = Module["dynCall_iiiiiiiiiii"] = (function() {
  25453. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25454. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25455. return Module["asm"]["dynCall_iiiiiiiiiii"].apply(null, arguments);
  25456. });
  25457. var dynCall_iiiiiiiiiiii = Module["dynCall_iiiiiiiiiiii"] = (function() {
  25458. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25459. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25460. return Module["asm"]["dynCall_iiiiiiiiiiii"].apply(null, arguments);
  25461. });
  25462. var dynCall_iiiiiiiiiiiii = Module["dynCall_iiiiiiiiiiiii"] = (function() {
  25463. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25464. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25465. return Module["asm"]["dynCall_iiiiiiiiiiiii"].apply(null, arguments);
  25466. });
  25467. var dynCall_iiiiiiiiiiiiii = Module["dynCall_iiiiiiiiiiiiii"] = (function() {
  25468. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25469. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25470. return Module["asm"]["dynCall_iiiiiiiiiiiiii"].apply(null, arguments);
  25471. });
  25472. var dynCall_iiiiiji = Module["dynCall_iiiiiji"] = (function() {
  25473. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25474. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25475. return Module["asm"]["dynCall_iiiiiji"].apply(null, arguments);
  25476. });
  25477. var dynCall_iiiij = Module["dynCall_iiiij"] = (function() {
  25478. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25479. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25480. return Module["asm"]["dynCall_iiiij"].apply(null, arguments);
  25481. });
  25482. var dynCall_iiiiji = Module["dynCall_iiiiji"] = (function() {
  25483. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25484. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25485. return Module["asm"]["dynCall_iiiiji"].apply(null, arguments);
  25486. });
  25487. var dynCall_iiiijii = Module["dynCall_iiiijii"] = (function() {
  25488. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25489. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25490. return Module["asm"]["dynCall_iiiijii"].apply(null, arguments);
  25491. });
  25492. var dynCall_iiiijiii = Module["dynCall_iiiijiii"] = (function() {
  25493. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25494. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25495. return Module["asm"]["dynCall_iiiijiii"].apply(null, arguments);
  25496. });
  25497. var dynCall_iiij = Module["dynCall_iiij"] = (function() {
  25498. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25499. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25500. return Module["asm"]["dynCall_iiij"].apply(null, arguments);
  25501. });
  25502. var dynCall_iiiji = Module["dynCall_iiiji"] = (function() {
  25503. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25504. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25505. return Module["asm"]["dynCall_iiiji"].apply(null, arguments);
  25506. });
  25507. var dynCall_iiijii = Module["dynCall_iiijii"] = (function() {
  25508. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25509. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25510. return Module["asm"]["dynCall_iiijii"].apply(null, arguments);
  25511. });
  25512. var dynCall_iiijiii = Module["dynCall_iiijiii"] = (function() {
  25513. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25514. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25515. return Module["asm"]["dynCall_iiijiii"].apply(null, arguments);
  25516. });
  25517. var dynCall_iiijji = Module["dynCall_iiijji"] = (function() {
  25518. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25519. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25520. return Module["asm"]["dynCall_iiijji"].apply(null, arguments);
  25521. });
  25522. var dynCall_iiijjiiii = Module["dynCall_iiijjiiii"] = (function() {
  25523. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25524. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25525. return Module["asm"]["dynCall_iiijjiiii"].apply(null, arguments);
  25526. });
  25527. var dynCall_iij = Module["dynCall_iij"] = (function() {
  25528. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25529. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25530. return Module["asm"]["dynCall_iij"].apply(null, arguments);
  25531. });
  25532. var dynCall_iiji = Module["dynCall_iiji"] = (function() {
  25533. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25534. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25535. return Module["asm"]["dynCall_iiji"].apply(null, arguments);
  25536. });
  25537. var dynCall_iijii = Module["dynCall_iijii"] = (function() {
  25538. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25539. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25540. return Module["asm"]["dynCall_iijii"].apply(null, arguments);
  25541. });
  25542. var dynCall_iijiii = Module["dynCall_iijiii"] = (function() {
  25543. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25544. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25545. return Module["asm"]["dynCall_iijiii"].apply(null, arguments);
  25546. });
  25547. var dynCall_iijji = Module["dynCall_iijji"] = (function() {
  25548. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25549. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25550. return Module["asm"]["dynCall_iijji"].apply(null, arguments);
  25551. });
  25552. var dynCall_iijjii = Module["dynCall_iijjii"] = (function() {
  25553. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25554. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25555. return Module["asm"]["dynCall_iijjii"].apply(null, arguments);
  25556. });
  25557. var dynCall_iijjiii = Module["dynCall_iijjiii"] = (function() {
  25558. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25559. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25560. return Module["asm"]["dynCall_iijjiii"].apply(null, arguments);
  25561. });
  25562. var dynCall_iijjji = Module["dynCall_iijjji"] = (function() {
  25563. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25564. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25565. return Module["asm"]["dynCall_iijjji"].apply(null, arguments);
  25566. });
  25567. var dynCall_ij = Module["dynCall_ij"] = (function() {
  25568. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25569. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25570. return Module["asm"]["dynCall_ij"].apply(null, arguments);
  25571. });
  25572. var dynCall_iji = Module["dynCall_iji"] = (function() {
  25573. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25574. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25575. return Module["asm"]["dynCall_iji"].apply(null, arguments);
  25576. });
  25577. var dynCall_ijiii = Module["dynCall_ijiii"] = (function() {
  25578. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25579. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25580. return Module["asm"]["dynCall_ijiii"].apply(null, arguments);
  25581. });
  25582. var dynCall_ijj = Module["dynCall_ijj"] = (function() {
  25583. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25584. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25585. return Module["asm"]["dynCall_ijj"].apply(null, arguments);
  25586. });
  25587. var dynCall_ijji = Module["dynCall_ijji"] = (function() {
  25588. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25589. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25590. return Module["asm"]["dynCall_ijji"].apply(null, arguments);
  25591. });
  25592. var dynCall_j = Module["dynCall_j"] = (function() {
  25593. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25594. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25595. return Module["asm"]["dynCall_j"].apply(null, arguments);
  25596. });
  25597. var dynCall_jdi = Module["dynCall_jdi"] = (function() {
  25598. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25599. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25600. return Module["asm"]["dynCall_jdi"].apply(null, arguments);
  25601. });
  25602. var dynCall_jdii = Module["dynCall_jdii"] = (function() {
  25603. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25604. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25605. return Module["asm"]["dynCall_jdii"].apply(null, arguments);
  25606. });
  25607. var dynCall_jfi = Module["dynCall_jfi"] = (function() {
  25608. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25609. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25610. return Module["asm"]["dynCall_jfi"].apply(null, arguments);
  25611. });
  25612. var dynCall_ji = Module["dynCall_ji"] = (function() {
  25613. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25614. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25615. return Module["asm"]["dynCall_ji"].apply(null, arguments);
  25616. });
  25617. var dynCall_jidi = Module["dynCall_jidi"] = (function() {
  25618. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25619. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25620. return Module["asm"]["dynCall_jidi"].apply(null, arguments);
  25621. });
  25622. var dynCall_jidii = Module["dynCall_jidii"] = (function() {
  25623. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25624. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25625. return Module["asm"]["dynCall_jidii"].apply(null, arguments);
  25626. });
  25627. var dynCall_jii = Module["dynCall_jii"] = (function() {
  25628. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25629. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25630. return Module["asm"]["dynCall_jii"].apply(null, arguments);
  25631. });
  25632. var dynCall_jiii = Module["dynCall_jiii"] = (function() {
  25633. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25634. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25635. return Module["asm"]["dynCall_jiii"].apply(null, arguments);
  25636. });
  25637. var dynCall_jiiii = Module["dynCall_jiiii"] = (function() {
  25638. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25639. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25640. return Module["asm"]["dynCall_jiiii"].apply(null, arguments);
  25641. });
  25642. var dynCall_jiiiii = Module["dynCall_jiiiii"] = (function() {
  25643. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25644. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25645. return Module["asm"]["dynCall_jiiiii"].apply(null, arguments);
  25646. });
  25647. var dynCall_jiiiiii = Module["dynCall_jiiiiii"] = (function() {
  25648. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25649. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25650. return Module["asm"]["dynCall_jiiiiii"].apply(null, arguments);
  25651. });
  25652. var dynCall_jiiiiiiiiii = Module["dynCall_jiiiiiiiiii"] = (function() {
  25653. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25654. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25655. return Module["asm"]["dynCall_jiiiiiiiiii"].apply(null, arguments);
  25656. });
  25657. var dynCall_jiiji = Module["dynCall_jiiji"] = (function() {
  25658. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25659. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25660. return Module["asm"]["dynCall_jiiji"].apply(null, arguments);
  25661. });
  25662. var dynCall_jiji = Module["dynCall_jiji"] = (function() {
  25663. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25664. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25665. return Module["asm"]["dynCall_jiji"].apply(null, arguments);
  25666. });
  25667. var dynCall_jijii = Module["dynCall_jijii"] = (function() {
  25668. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25669. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25670. return Module["asm"]["dynCall_jijii"].apply(null, arguments);
  25671. });
  25672. var dynCall_jijiii = Module["dynCall_jijiii"] = (function() {
  25673. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25674. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25675. return Module["asm"]["dynCall_jijiii"].apply(null, arguments);
  25676. });
  25677. var dynCall_jijji = Module["dynCall_jijji"] = (function() {
  25678. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25679. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25680. return Module["asm"]["dynCall_jijji"].apply(null, arguments);
  25681. });
  25682. var dynCall_jji = Module["dynCall_jji"] = (function() {
  25683. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25684. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25685. return Module["asm"]["dynCall_jji"].apply(null, arguments);
  25686. });
  25687. var dynCall_v = Module["dynCall_v"] = (function() {
  25688. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25689. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25690. return Module["asm"]["dynCall_v"].apply(null, arguments);
  25691. });
  25692. var dynCall_vd = Module["dynCall_vd"] = (function() {
  25693. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25694. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25695. return Module["asm"]["dynCall_vd"].apply(null, arguments);
  25696. });
  25697. var dynCall_vf = Module["dynCall_vf"] = (function() {
  25698. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25699. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25700. return Module["asm"]["dynCall_vf"].apply(null, arguments);
  25701. });
  25702. var dynCall_vff = Module["dynCall_vff"] = (function() {
  25703. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25704. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25705. return Module["asm"]["dynCall_vff"].apply(null, arguments);
  25706. });
  25707. var dynCall_vffff = Module["dynCall_vffff"] = (function() {
  25708. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25709. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25710. return Module["asm"]["dynCall_vffff"].apply(null, arguments);
  25711. });
  25712. var dynCall_vfi = Module["dynCall_vfi"] = (function() {
  25713. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25714. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25715. return Module["asm"]["dynCall_vfi"].apply(null, arguments);
  25716. });
  25717. var dynCall_vi = Module["dynCall_vi"] = (function() {
  25718. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25719. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25720. return Module["asm"]["dynCall_vi"].apply(null, arguments);
  25721. });
  25722. var dynCall_vid = Module["dynCall_vid"] = (function() {
  25723. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25724. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25725. return Module["asm"]["dynCall_vid"].apply(null, arguments);
  25726. });
  25727. var dynCall_vidi = Module["dynCall_vidi"] = (function() {
  25728. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25729. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25730. return Module["asm"]["dynCall_vidi"].apply(null, arguments);
  25731. });
  25732. var dynCall_vif = Module["dynCall_vif"] = (function() {
  25733. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25734. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25735. return Module["asm"]["dynCall_vif"].apply(null, arguments);
  25736. });
  25737. var dynCall_viff = Module["dynCall_viff"] = (function() {
  25738. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25739. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25740. return Module["asm"]["dynCall_viff"].apply(null, arguments);
  25741. });
  25742. var dynCall_vifff = Module["dynCall_vifff"] = (function() {
  25743. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25744. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25745. return Module["asm"]["dynCall_vifff"].apply(null, arguments);
  25746. });
  25747. var dynCall_viffff = Module["dynCall_viffff"] = (function() {
  25748. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25749. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25750. return Module["asm"]["dynCall_viffff"].apply(null, arguments);
  25751. });
  25752. var dynCall_viffffi = Module["dynCall_viffffi"] = (function() {
  25753. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25754. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25755. return Module["asm"]["dynCall_viffffi"].apply(null, arguments);
  25756. });
  25757. var dynCall_viffffii = Module["dynCall_viffffii"] = (function() {
  25758. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25759. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25760. return Module["asm"]["dynCall_viffffii"].apply(null, arguments);
  25761. });
  25762. var dynCall_viffffiifffiiiiif = Module["dynCall_viffffiifffiiiiif"] = (function() {
  25763. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25764. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25765. return Module["asm"]["dynCall_viffffiifffiiiiif"].apply(null, arguments);
  25766. });
  25767. var dynCall_viffffiii = Module["dynCall_viffffiii"] = (function() {
  25768. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25769. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25770. return Module["asm"]["dynCall_viffffiii"].apply(null, arguments);
  25771. });
  25772. var dynCall_vifffi = Module["dynCall_vifffi"] = (function() {
  25773. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25774. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25775. return Module["asm"]["dynCall_vifffi"].apply(null, arguments);
  25776. });
  25777. var dynCall_vifffii = Module["dynCall_vifffii"] = (function() {
  25778. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25779. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25780. return Module["asm"]["dynCall_vifffii"].apply(null, arguments);
  25781. });
  25782. var dynCall_viffi = Module["dynCall_viffi"] = (function() {
  25783. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25784. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25785. return Module["asm"]["dynCall_viffi"].apply(null, arguments);
  25786. });
  25787. var dynCall_viffii = Module["dynCall_viffii"] = (function() {
  25788. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25789. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25790. return Module["asm"]["dynCall_viffii"].apply(null, arguments);
  25791. });
  25792. var dynCall_viffiifffffiii = Module["dynCall_viffiifffffiii"] = (function() {
  25793. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25794. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25795. return Module["asm"]["dynCall_viffiifffffiii"].apply(null, arguments);
  25796. });
  25797. var dynCall_viffiii = Module["dynCall_viffiii"] = (function() {
  25798. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25799. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25800. return Module["asm"]["dynCall_viffiii"].apply(null, arguments);
  25801. });
  25802. var dynCall_viffiiiif = Module["dynCall_viffiiiif"] = (function() {
  25803. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25804. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25805. return Module["asm"]["dynCall_viffiiiif"].apply(null, arguments);
  25806. });
  25807. var dynCall_vifi = Module["dynCall_vifi"] = (function() {
  25808. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25809. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25810. return Module["asm"]["dynCall_vifi"].apply(null, arguments);
  25811. });
  25812. var dynCall_vifii = Module["dynCall_vifii"] = (function() {
  25813. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25814. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25815. return Module["asm"]["dynCall_vifii"].apply(null, arguments);
  25816. });
  25817. var dynCall_vifiiii = Module["dynCall_vifiiii"] = (function() {
  25818. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25819. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25820. return Module["asm"]["dynCall_vifiiii"].apply(null, arguments);
  25821. });
  25822. var dynCall_vifijii = Module["dynCall_vifijii"] = (function() {
  25823. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25824. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25825. return Module["asm"]["dynCall_vifijii"].apply(null, arguments);
  25826. });
  25827. var dynCall_vii = Module["dynCall_vii"] = (function() {
  25828. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25829. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25830. return Module["asm"]["dynCall_vii"].apply(null, arguments);
  25831. });
  25832. var dynCall_viid = Module["dynCall_viid"] = (function() {
  25833. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25834. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25835. return Module["asm"]["dynCall_viid"].apply(null, arguments);
  25836. });
  25837. var dynCall_viidi = Module["dynCall_viidi"] = (function() {
  25838. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25839. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25840. return Module["asm"]["dynCall_viidi"].apply(null, arguments);
  25841. });
  25842. var dynCall_viidii = Module["dynCall_viidii"] = (function() {
  25843. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25844. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25845. return Module["asm"]["dynCall_viidii"].apply(null, arguments);
  25846. });
  25847. var dynCall_viif = Module["dynCall_viif"] = (function() {
  25848. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25849. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25850. return Module["asm"]["dynCall_viif"].apply(null, arguments);
  25851. });
  25852. var dynCall_viiff = Module["dynCall_viiff"] = (function() {
  25853. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25854. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25855. return Module["asm"]["dynCall_viiff"].apply(null, arguments);
  25856. });
  25857. var dynCall_viifff = Module["dynCall_viifff"] = (function() {
  25858. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25859. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25860. return Module["asm"]["dynCall_viifff"].apply(null, arguments);
  25861. });
  25862. var dynCall_viifffi = Module["dynCall_viifffi"] = (function() {
  25863. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25864. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25865. return Module["asm"]["dynCall_viifffi"].apply(null, arguments);
  25866. });
  25867. var dynCall_viiffi = Module["dynCall_viiffi"] = (function() {
  25868. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25869. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25870. return Module["asm"]["dynCall_viiffi"].apply(null, arguments);
  25871. });
  25872. var dynCall_viiffii = Module["dynCall_viiffii"] = (function() {
  25873. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25874. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25875. return Module["asm"]["dynCall_viiffii"].apply(null, arguments);
  25876. });
  25877. var dynCall_viifi = Module["dynCall_viifi"] = (function() {
  25878. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25879. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25880. return Module["asm"]["dynCall_viifi"].apply(null, arguments);
  25881. });
  25882. var dynCall_viifii = Module["dynCall_viifii"] = (function() {
  25883. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25884. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25885. return Module["asm"]["dynCall_viifii"].apply(null, arguments);
  25886. });
  25887. var dynCall_viifiii = Module["dynCall_viifiii"] = (function() {
  25888. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25889. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25890. return Module["asm"]["dynCall_viifiii"].apply(null, arguments);
  25891. });
  25892. var dynCall_viifiiii = Module["dynCall_viifiiii"] = (function() {
  25893. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25894. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25895. return Module["asm"]["dynCall_viifiiii"].apply(null, arguments);
  25896. });
  25897. var dynCall_viii = Module["dynCall_viii"] = (function() {
  25898. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25899. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25900. return Module["asm"]["dynCall_viii"].apply(null, arguments);
  25901. });
  25902. var dynCall_viiidi = Module["dynCall_viiidi"] = (function() {
  25903. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25904. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25905. return Module["asm"]["dynCall_viiidi"].apply(null, arguments);
  25906. });
  25907. var dynCall_viiifffi = Module["dynCall_viiifffi"] = (function() {
  25908. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25909. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25910. return Module["asm"]["dynCall_viiifffi"].apply(null, arguments);
  25911. });
  25912. var dynCall_viiiffi = Module["dynCall_viiiffi"] = (function() {
  25913. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25914. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25915. return Module["asm"]["dynCall_viiiffi"].apply(null, arguments);
  25916. });
  25917. var dynCall_viiiffii = Module["dynCall_viiiffii"] = (function() {
  25918. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25919. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25920. return Module["asm"]["dynCall_viiiffii"].apply(null, arguments);
  25921. });
  25922. var dynCall_viiifi = Module["dynCall_viiifi"] = (function() {
  25923. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25924. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25925. return Module["asm"]["dynCall_viiifi"].apply(null, arguments);
  25926. });
  25927. var dynCall_viiifii = Module["dynCall_viiifii"] = (function() {
  25928. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25929. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25930. return Module["asm"]["dynCall_viiifii"].apply(null, arguments);
  25931. });
  25932. var dynCall_viiifiii = Module["dynCall_viiifiii"] = (function() {
  25933. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25934. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25935. return Module["asm"]["dynCall_viiifiii"].apply(null, arguments);
  25936. });
  25937. var dynCall_viiifiiiii = Module["dynCall_viiifiiiii"] = (function() {
  25938. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25939. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25940. return Module["asm"]["dynCall_viiifiiiii"].apply(null, arguments);
  25941. });
  25942. var dynCall_viiii = Module["dynCall_viiii"] = (function() {
  25943. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25944. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25945. return Module["asm"]["dynCall_viiii"].apply(null, arguments);
  25946. });
  25947. var dynCall_viiiif = Module["dynCall_viiiif"] = (function() {
  25948. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25949. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25950. return Module["asm"]["dynCall_viiiif"].apply(null, arguments);
  25951. });
  25952. var dynCall_viiiifii = Module["dynCall_viiiifii"] = (function() {
  25953. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25954. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25955. return Module["asm"]["dynCall_viiiifii"].apply(null, arguments);
  25956. });
  25957. var dynCall_viiiifiiiiif = Module["dynCall_viiiifiiiiif"] = (function() {
  25958. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25959. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25960. return Module["asm"]["dynCall_viiiifiiiiif"].apply(null, arguments);
  25961. });
  25962. var dynCall_viiiii = Module["dynCall_viiiii"] = (function() {
  25963. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25964. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25965. return Module["asm"]["dynCall_viiiii"].apply(null, arguments);
  25966. });
  25967. var dynCall_viiiiif = Module["dynCall_viiiiif"] = (function() {
  25968. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25969. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25970. return Module["asm"]["dynCall_viiiiif"].apply(null, arguments);
  25971. });
  25972. var dynCall_viiiiiffi = Module["dynCall_viiiiiffi"] = (function() {
  25973. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25974. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25975. return Module["asm"]["dynCall_viiiiiffi"].apply(null, arguments);
  25976. });
  25977. var dynCall_viiiiiffii = Module["dynCall_viiiiiffii"] = (function() {
  25978. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25979. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25980. return Module["asm"]["dynCall_viiiiiffii"].apply(null, arguments);
  25981. });
  25982. var dynCall_viiiiifi = Module["dynCall_viiiiifi"] = (function() {
  25983. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25984. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25985. return Module["asm"]["dynCall_viiiiifi"].apply(null, arguments);
  25986. });
  25987. var dynCall_viiiiii = Module["dynCall_viiiiii"] = (function() {
  25988. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25989. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25990. return Module["asm"]["dynCall_viiiiii"].apply(null, arguments);
  25991. });
  25992. var dynCall_viiiiiif = Module["dynCall_viiiiiif"] = (function() {
  25993. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25994. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25995. return Module["asm"]["dynCall_viiiiiif"].apply(null, arguments);
  25996. });
  25997. var dynCall_viiiiiii = Module["dynCall_viiiiiii"] = (function() {
  25998. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25999. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26000. return Module["asm"]["dynCall_viiiiiii"].apply(null, arguments);
  26001. });
  26002. var dynCall_viiiiiiifi = Module["dynCall_viiiiiiifi"] = (function() {
  26003. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26004. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26005. return Module["asm"]["dynCall_viiiiiiifi"].apply(null, arguments);
  26006. });
  26007. var dynCall_viiiiiiii = Module["dynCall_viiiiiiii"] = (function() {
  26008. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26009. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26010. return Module["asm"]["dynCall_viiiiiiii"].apply(null, arguments);
  26011. });
  26012. var dynCall_viiiiiiiii = Module["dynCall_viiiiiiiii"] = (function() {
  26013. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26014. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26015. return Module["asm"]["dynCall_viiiiiiiii"].apply(null, arguments);
  26016. });
  26017. var dynCall_viiiiiiiiii = Module["dynCall_viiiiiiiiii"] = (function() {
  26018. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26019. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26020. return Module["asm"]["dynCall_viiiiiiiiii"].apply(null, arguments);
  26021. });
  26022. var dynCall_viiiiiiiiiii = Module["dynCall_viiiiiiiiiii"] = (function() {
  26023. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26024. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26025. return Module["asm"]["dynCall_viiiiiiiiiii"].apply(null, arguments);
  26026. });
  26027. var dynCall_viiiiiiiiiiifii = Module["dynCall_viiiiiiiiiiifii"] = (function() {
  26028. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26029. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26030. return Module["asm"]["dynCall_viiiiiiiiiiifii"].apply(null, arguments);
  26031. });
  26032. var dynCall_viiiiiiiiiiii = Module["dynCall_viiiiiiiiiiii"] = (function() {
  26033. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26034. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26035. return Module["asm"]["dynCall_viiiiiiiiiiii"].apply(null, arguments);
  26036. });
  26037. var dynCall_viiiiiiiiiiiiii = Module["dynCall_viiiiiiiiiiiiii"] = (function() {
  26038. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26039. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26040. return Module["asm"]["dynCall_viiiiiiiiiiiiii"].apply(null, arguments);
  26041. });
  26042. var dynCall_viiiiiiiiiiiiiii = Module["dynCall_viiiiiiiiiiiiiii"] = (function() {
  26043. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26044. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26045. return Module["asm"]["dynCall_viiiiiiiiiiiiiii"].apply(null, arguments);
  26046. });
  26047. var dynCall_viiiiiiiiiiiiiiiiii = Module["dynCall_viiiiiiiiiiiiiiiiii"] = (function() {
  26048. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26049. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26050. return Module["asm"]["dynCall_viiiiiiiiiiiiiiiiii"].apply(null, arguments);
  26051. });
  26052. var dynCall_viiiiiji = Module["dynCall_viiiiiji"] = (function() {
  26053. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26054. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26055. return Module["asm"]["dynCall_viiiiiji"].apply(null, arguments);
  26056. });
  26057. var dynCall_viiiij = Module["dynCall_viiiij"] = (function() {
  26058. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26059. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26060. return Module["asm"]["dynCall_viiiij"].apply(null, arguments);
  26061. });
  26062. var dynCall_viiiijiiii = Module["dynCall_viiiijiiii"] = (function() {
  26063. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26064. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26065. return Module["asm"]["dynCall_viiiijiiii"].apply(null, arguments);
  26066. });
  26067. var dynCall_viiiji = Module["dynCall_viiiji"] = (function() {
  26068. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26069. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26070. return Module["asm"]["dynCall_viiiji"].apply(null, arguments);
  26071. });
  26072. var dynCall_viiijji = Module["dynCall_viiijji"] = (function() {
  26073. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26074. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26075. return Module["asm"]["dynCall_viiijji"].apply(null, arguments);
  26076. });
  26077. var dynCall_viij = Module["dynCall_viij"] = (function() {
  26078. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26079. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26080. return Module["asm"]["dynCall_viij"].apply(null, arguments);
  26081. });
  26082. var dynCall_viiji = Module["dynCall_viiji"] = (function() {
  26083. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26084. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26085. return Module["asm"]["dynCall_viiji"].apply(null, arguments);
  26086. });
  26087. var dynCall_viijii = Module["dynCall_viijii"] = (function() {
  26088. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26089. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26090. return Module["asm"]["dynCall_viijii"].apply(null, arguments);
  26091. });
  26092. var dynCall_viijiijiii = Module["dynCall_viijiijiii"] = (function() {
  26093. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26094. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26095. return Module["asm"]["dynCall_viijiijiii"].apply(null, arguments);
  26096. });
  26097. var dynCall_viijijii = Module["dynCall_viijijii"] = (function() {
  26098. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26099. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26100. return Module["asm"]["dynCall_viijijii"].apply(null, arguments);
  26101. });
  26102. var dynCall_viijijiii = Module["dynCall_viijijiii"] = (function() {
  26103. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26104. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26105. return Module["asm"]["dynCall_viijijiii"].apply(null, arguments);
  26106. });
  26107. var dynCall_viijijj = Module["dynCall_viijijj"] = (function() {
  26108. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26109. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26110. return Module["asm"]["dynCall_viijijj"].apply(null, arguments);
  26111. });
  26112. var dynCall_viijj = Module["dynCall_viijj"] = (function() {
  26113. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26114. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26115. return Module["asm"]["dynCall_viijj"].apply(null, arguments);
  26116. });
  26117. var dynCall_viijji = Module["dynCall_viijji"] = (function() {
  26118. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26119. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26120. return Module["asm"]["dynCall_viijji"].apply(null, arguments);
  26121. });
  26122. var dynCall_viijjii = Module["dynCall_viijjii"] = (function() {
  26123. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26124. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26125. return Module["asm"]["dynCall_viijjii"].apply(null, arguments);
  26126. });
  26127. var dynCall_viijjiii = Module["dynCall_viijjiii"] = (function() {
  26128. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26129. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26130. return Module["asm"]["dynCall_viijjiii"].apply(null, arguments);
  26131. });
  26132. var dynCall_viijjji = Module["dynCall_viijjji"] = (function() {
  26133. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26134. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26135. return Module["asm"]["dynCall_viijjji"].apply(null, arguments);
  26136. });
  26137. var dynCall_vij = Module["dynCall_vij"] = (function() {
  26138. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26139. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26140. return Module["asm"]["dynCall_vij"].apply(null, arguments);
  26141. });
  26142. var dynCall_viji = Module["dynCall_viji"] = (function() {
  26143. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26144. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26145. return Module["asm"]["dynCall_viji"].apply(null, arguments);
  26146. });
  26147. var dynCall_vijii = Module["dynCall_vijii"] = (function() {
  26148. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26149. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26150. return Module["asm"]["dynCall_vijii"].apply(null, arguments);
  26151. });
  26152. var dynCall_vijiii = Module["dynCall_vijiii"] = (function() {
  26153. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26154. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26155. return Module["asm"]["dynCall_vijiii"].apply(null, arguments);
  26156. });
  26157. var dynCall_vijiji = Module["dynCall_vijiji"] = (function() {
  26158. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26159. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26160. return Module["asm"]["dynCall_vijiji"].apply(null, arguments);
  26161. });
  26162. var dynCall_vijijji = Module["dynCall_vijijji"] = (function() {
  26163. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26164. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26165. return Module["asm"]["dynCall_vijijji"].apply(null, arguments);
  26166. });
  26167. var dynCall_vijji = Module["dynCall_vijji"] = (function() {
  26168. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26169. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26170. return Module["asm"]["dynCall_vijji"].apply(null, arguments);
  26171. });
  26172. var dynCall_vijjii = Module["dynCall_vijjii"] = (function() {
  26173. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26174. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26175. return Module["asm"]["dynCall_vijjii"].apply(null, arguments);
  26176. });
  26177. var dynCall_vijjji = Module["dynCall_vijjji"] = (function() {
  26178. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26179. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26180. return Module["asm"]["dynCall_vijjji"].apply(null, arguments);
  26181. });
  26182. var dynCall_vji = Module["dynCall_vji"] = (function() {
  26183. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26184. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26185. return Module["asm"]["dynCall_vji"].apply(null, arguments);
  26186. });
  26187. var dynCall_vjiiii = Module["dynCall_vjiiii"] = (function() {
  26188. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26189. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26190. return Module["asm"]["dynCall_vjiiii"].apply(null, arguments);
  26191. });
  26192. var dynCall_vjji = Module["dynCall_vjji"] = (function() {
  26193. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26194. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26195. return Module["asm"]["dynCall_vjji"].apply(null, arguments);
  26196. });
  26197. Module["asm"] = asm;
  26198. if (!Module["intArrayFromString"]) Module["intArrayFromString"] = (function() {
  26199. abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26200. });
  26201. if (!Module["intArrayToString"]) Module["intArrayToString"] = (function() {
  26202. abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26203. });
  26204. Module["ccall"] = ccall;
  26205. Module["cwrap"] = cwrap;
  26206. if (!Module["setValue"]) Module["setValue"] = (function() {
  26207. abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26208. });
  26209. if (!Module["getValue"]) Module["getValue"] = (function() {
  26210. abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26211. });
  26212. if (!Module["allocate"]) Module["allocate"] = (function() {
  26213. abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26214. });
  26215. if (!Module["getMemory"]) Module["getMemory"] = (function() {
  26216. 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");
  26217. });
  26218. if (!Module["Pointer_stringify"]) Module["Pointer_stringify"] = (function() {
  26219. abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26220. });
  26221. if (!Module["AsciiToString"]) Module["AsciiToString"] = (function() {
  26222. abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26223. });
  26224. if (!Module["stringToAscii"]) Module["stringToAscii"] = (function() {
  26225. abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26226. });
  26227. if (!Module["UTF8ArrayToString"]) Module["UTF8ArrayToString"] = (function() {
  26228. abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26229. });
  26230. if (!Module["UTF8ToString"]) Module["UTF8ToString"] = (function() {
  26231. abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26232. });
  26233. if (!Module["stringToUTF8Array"]) Module["stringToUTF8Array"] = (function() {
  26234. abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26235. });
  26236. if (!Module["stringToUTF8"]) Module["stringToUTF8"] = (function() {
  26237. abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26238. });
  26239. if (!Module["lengthBytesUTF8"]) Module["lengthBytesUTF8"] = (function() {
  26240. abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26241. });
  26242. if (!Module["UTF16ToString"]) Module["UTF16ToString"] = (function() {
  26243. abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26244. });
  26245. if (!Module["stringToUTF16"]) Module["stringToUTF16"] = (function() {
  26246. abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26247. });
  26248. if (!Module["lengthBytesUTF16"]) Module["lengthBytesUTF16"] = (function() {
  26249. abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26250. });
  26251. if (!Module["UTF32ToString"]) Module["UTF32ToString"] = (function() {
  26252. abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26253. });
  26254. if (!Module["stringToUTF32"]) Module["stringToUTF32"] = (function() {
  26255. abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26256. });
  26257. if (!Module["lengthBytesUTF32"]) Module["lengthBytesUTF32"] = (function() {
  26258. abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26259. });
  26260. if (!Module["allocateUTF8"]) Module["allocateUTF8"] = (function() {
  26261. abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26262. });
  26263. Module["stackTrace"] = stackTrace;
  26264. if (!Module["addOnPreRun"]) Module["addOnPreRun"] = (function() {
  26265. abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26266. });
  26267. if (!Module["addOnInit"]) Module["addOnInit"] = (function() {
  26268. abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26269. });
  26270. if (!Module["addOnPreMain"]) Module["addOnPreMain"] = (function() {
  26271. abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26272. });
  26273. if (!Module["addOnExit"]) Module["addOnExit"] = (function() {
  26274. abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26275. });
  26276. if (!Module["addOnPostRun"]) Module["addOnPostRun"] = (function() {
  26277. abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26278. });
  26279. if (!Module["writeStringToMemory"]) Module["writeStringToMemory"] = (function() {
  26280. abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26281. });
  26282. if (!Module["writeArrayToMemory"]) Module["writeArrayToMemory"] = (function() {
  26283. abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26284. });
  26285. if (!Module["writeAsciiToMemory"]) Module["writeAsciiToMemory"] = (function() {
  26286. abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26287. });
  26288. Module["addRunDependency"] = addRunDependency;
  26289. Module["removeRunDependency"] = removeRunDependency;
  26290. if (!Module["ENV"]) Module["ENV"] = (function() {
  26291. abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26292. });
  26293. if (!Module["FS"]) Module["FS"] = (function() {
  26294. abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26295. });
  26296. if (!Module["FS_createFolder"]) Module["FS_createFolder"] = (function() {
  26297. 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");
  26298. });
  26299. Module["FS_createPath"] = FS.createPath;
  26300. Module["FS_createDataFile"] = FS.createDataFile;
  26301. if (!Module["FS_createPreloadedFile"]) Module["FS_createPreloadedFile"] = (function() {
  26302. 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");
  26303. });
  26304. if (!Module["FS_createLazyFile"]) Module["FS_createLazyFile"] = (function() {
  26305. 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");
  26306. });
  26307. if (!Module["FS_createLink"]) Module["FS_createLink"] = (function() {
  26308. 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");
  26309. });
  26310. if (!Module["FS_createDevice"]) Module["FS_createDevice"] = (function() {
  26311. 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");
  26312. });
  26313. if (!Module["FS_unlink"]) Module["FS_unlink"] = (function() {
  26314. 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");
  26315. });
  26316. if (!Module["GL"]) Module["GL"] = (function() {
  26317. abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26318. });
  26319. if (!Module["staticAlloc"]) Module["staticAlloc"] = (function() {
  26320. abort("'staticAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26321. });
  26322. if (!Module["dynamicAlloc"]) Module["dynamicAlloc"] = (function() {
  26323. abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26324. });
  26325. if (!Module["warnOnce"]) Module["warnOnce"] = (function() {
  26326. abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26327. });
  26328. if (!Module["loadDynamicLibrary"]) Module["loadDynamicLibrary"] = (function() {
  26329. abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26330. });
  26331. if (!Module["loadWebAssemblyModule"]) Module["loadWebAssemblyModule"] = (function() {
  26332. abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26333. });
  26334. if (!Module["getLEB"]) Module["getLEB"] = (function() {
  26335. abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26336. });
  26337. if (!Module["getFunctionTables"]) Module["getFunctionTables"] = (function() {
  26338. abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26339. });
  26340. if (!Module["alignFunctionTables"]) Module["alignFunctionTables"] = (function() {
  26341. abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26342. });
  26343. if (!Module["registerFunctions"]) Module["registerFunctions"] = (function() {
  26344. abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26345. });
  26346. if (!Module["addFunction"]) Module["addFunction"] = (function() {
  26347. abort("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26348. });
  26349. if (!Module["removeFunction"]) Module["removeFunction"] = (function() {
  26350. abort("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26351. });
  26352. if (!Module["getFuncWrapper"]) Module["getFuncWrapper"] = (function() {
  26353. abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26354. });
  26355. if (!Module["prettyPrint"]) Module["prettyPrint"] = (function() {
  26356. abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26357. });
  26358. if (!Module["makeBigInt"]) Module["makeBigInt"] = (function() {
  26359. abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26360. });
  26361. if (!Module["dynCall"]) Module["dynCall"] = (function() {
  26362. abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26363. });
  26364. if (!Module["getCompilerSetting"]) Module["getCompilerSetting"] = (function() {
  26365. abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26366. });
  26367. if (!Module["stackSave"]) Module["stackSave"] = (function() {
  26368. abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26369. });
  26370. if (!Module["stackRestore"]) Module["stackRestore"] = (function() {
  26371. abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26372. });
  26373. if (!Module["stackAlloc"]) Module["stackAlloc"] = (function() {
  26374. abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26375. });
  26376. if (!Module["establishStackSpace"]) Module["establishStackSpace"] = (function() {
  26377. abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26378. });
  26379. if (!Module["print"]) Module["print"] = (function() {
  26380. abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26381. });
  26382. if (!Module["printErr"]) Module["printErr"] = (function() {
  26383. abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26384. });
  26385. Module["writeStackCookie"] = writeStackCookie;
  26386. Module["checkStackCookie"] = checkStackCookie;
  26387. if (!Module["abortStackOverflow"]) Module["abortStackOverflow"] = (function() {
  26388. abort("'abortStackOverflow' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26389. });
  26390. if (!Module["ALLOC_NORMAL"]) Object.defineProperty(Module, "ALLOC_NORMAL", {
  26391. get: (function() {
  26392. abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26393. })
  26394. });
  26395. if (!Module["ALLOC_STACK"]) Object.defineProperty(Module, "ALLOC_STACK", {
  26396. get: (function() {
  26397. abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26398. })
  26399. });
  26400. if (!Module["ALLOC_STATIC"]) Object.defineProperty(Module, "ALLOC_STATIC", {
  26401. get: (function() {
  26402. abort("'ALLOC_STATIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26403. })
  26404. });
  26405. if (!Module["ALLOC_DYNAMIC"]) Object.defineProperty(Module, "ALLOC_DYNAMIC", {
  26406. get: (function() {
  26407. abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26408. })
  26409. });
  26410. if (!Module["ALLOC_NONE"]) Object.defineProperty(Module, "ALLOC_NONE", {
  26411. get: (function() {
  26412. abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  26413. })
  26414. });
  26415. function ExitStatus(status) {
  26416. this.name = "ExitStatus";
  26417. this.message = "Program terminated with exit(" + status + ")";
  26418. this.status = status;
  26419. }
  26420. ExitStatus.prototype = new Error;
  26421. ExitStatus.prototype.constructor = ExitStatus;
  26422. var initialStackTop;
  26423. var calledMain = false;
  26424. dependenciesFulfilled = function runCaller() {
  26425. if (!Module["calledRun"]) run();
  26426. if (!Module["calledRun"]) dependenciesFulfilled = runCaller;
  26427. };
  26428. Module["callMain"] = function callMain(args) {
  26429. assert(runDependencies == 0, "cannot call main when async dependencies remain! (listen on __ATMAIN__)");
  26430. assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called");
  26431. args = args || [];
  26432. ensureInitRuntime();
  26433. var argc = args.length + 1;
  26434. var argv = stackAlloc((argc + 1) * 4);
  26435. HEAP32[argv >> 2] = allocateUTF8OnStack(Module["thisProgram"]);
  26436. for (var i = 1; i < argc; i++) {
  26437. HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]);
  26438. }
  26439. HEAP32[(argv >> 2) + argc] = 0;
  26440. try {
  26441. var ret = Module["_main"](argc, argv, 0);
  26442. exit(ret, true);
  26443. } catch (e) {
  26444. if (e instanceof ExitStatus) {
  26445. return;
  26446. } else if (e == "SimulateInfiniteLoop") {
  26447. Module["noExitRuntime"] = true;
  26448. return;
  26449. } else {
  26450. var toLog = e;
  26451. if (e && typeof e === "object" && e.stack) {
  26452. toLog = [ e, e.stack ];
  26453. }
  26454. err("exception thrown: " + toLog);
  26455. Module["quit"](1, e);
  26456. }
  26457. } finally {
  26458. calledMain = true;
  26459. }
  26460. };
  26461. function run(args) {
  26462. args = args || Module["arguments"];
  26463. if (runDependencies > 0) {
  26464. return;
  26465. }
  26466. writeStackCookie();
  26467. preRun();
  26468. if (runDependencies > 0) return;
  26469. if (Module["calledRun"]) return;
  26470. function doRun() {
  26471. if (Module["calledRun"]) return;
  26472. Module["calledRun"] = true;
  26473. if (ABORT) return;
  26474. ensureInitRuntime();
  26475. preMain();
  26476. if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"]();
  26477. if (Module["_main"] && shouldRunNow) Module["callMain"](args);
  26478. postRun();
  26479. }
  26480. if (Module["setStatus"]) {
  26481. Module["setStatus"]("Running...");
  26482. setTimeout((function() {
  26483. setTimeout((function() {
  26484. Module["setStatus"]("");
  26485. }), 1);
  26486. doRun();
  26487. }), 1);
  26488. } else {
  26489. doRun();
  26490. }
  26491. checkStackCookie();
  26492. }
  26493. Module["run"] = run;
  26494. function checkUnflushedContent() {
  26495. var print = out;
  26496. var printErr = err;
  26497. var has = false;
  26498. out = err = (function(x) {
  26499. has = true;
  26500. });
  26501. try {
  26502. var flush = Module["_fflush"];
  26503. if (flush) flush(0);
  26504. var hasFS = true;
  26505. if (hasFS) {
  26506. [ "stdout", "stderr" ].forEach((function(name) {
  26507. var info = FS.analyzePath("/dev/" + name);
  26508. if (!info) return;
  26509. var stream = info.object;
  26510. var rdev = stream.rdev;
  26511. var tty = TTY.ttys[rdev];
  26512. if (tty && tty.output && tty.output.length) {
  26513. has = true;
  26514. }
  26515. }));
  26516. }
  26517. } catch (e) {}
  26518. out = print;
  26519. err = printErr;
  26520. if (has) {
  26521. 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.");
  26522. }
  26523. }
  26524. function exit(status, implicit) {
  26525. checkUnflushedContent();
  26526. if (implicit && Module["noExitRuntime"] && status === 0) {
  26527. return;
  26528. }
  26529. if (Module["noExitRuntime"]) {
  26530. if (!implicit) {
  26531. 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)");
  26532. }
  26533. } else {
  26534. ABORT = true;
  26535. EXITSTATUS = status;
  26536. STACKTOP = initialStackTop;
  26537. exitRuntime();
  26538. if (Module["onExit"]) Module["onExit"](status);
  26539. }
  26540. Module["quit"](status, new ExitStatus(status));
  26541. }
  26542. var abortDecorators = [];
  26543. function abort(what) {
  26544. if (Module["onAbort"]) {
  26545. Module["onAbort"](what);
  26546. }
  26547. if (what !== undefined) {
  26548. out(what);
  26549. err(what);
  26550. what = JSON.stringify(what);
  26551. } else {
  26552. what = "";
  26553. }
  26554. ABORT = true;
  26555. EXITSTATUS = 1;
  26556. var extra = "";
  26557. var output = "abort(" + what + ") at " + stackTrace() + extra;
  26558. if (abortDecorators) {
  26559. abortDecorators.forEach((function(decorator) {
  26560. output = decorator(output, what);
  26561. }));
  26562. }
  26563. throw output;
  26564. }
  26565. Module["abort"] = abort;
  26566. if (Module["preInit"]) {
  26567. if (typeof Module["preInit"] == "function") Module["preInit"] = [ Module["preInit"] ];
  26568. while (Module["preInit"].length > 0) {
  26569. Module["preInit"].pop()();
  26570. }
  26571. }
  26572. var shouldRunNow = true;
  26573. if (Module["noInitialRun"]) {
  26574. shouldRunNow = false;
  26575. }
  26576. Module["noExitRuntime"] = true;
  26577. run();
  26578. }