index.js 1.6 MB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546235472354823549235502355123552235532355423555235562355723558235592356023561235622356323564235652356623567235682356923570235712357223573235742357523576235772357823579235802358123582235832358423585235862358723588235892359023591235922359323594235952359623597235982359923600236012360223603236042360523606236072360823609236102361123612236132361423615236162361723618236192362023621236222362323624236252362623627236282362923630236312363223633236342363523636236372363823639236402364123642236432364423645236462364723648236492365023651236522365323654236552365623657236582365923660236612366223663236642366523666236672366823669236702367123672236732367423675236762367723678236792368023681236822368323684236852368623687236882368923690236912369223693236942369523696236972369823699237002370123702237032370423705237062370723708237092371023711237122371323714237152371623717237182371923720237212372223723237242372523726237272372823729237302373123732237332373423735237362373723738237392374023741237422374323744237452374623747237482374923750237512375223753237542375523756237572375823759237602376123762237632376423765237662376723768237692377023771237722377323774237752377623777237782377923780237812378223783237842378523786237872378823789237902379123792237932379423795237962379723798237992380023801238022380323804238052380623807238082380923810238112381223813238142381523816238172381823819238202382123822238232382423825238262382723828238292383023831238322383323834238352383623837238382383923840238412384223843238442384523846238472384823849238502385123852238532385423855238562385723858238592386023861238622386323864238652386623867238682386923870238712387223873238742387523876238772387823879238802388123882238832388423885238862388723888238892389023891238922389323894238952389623897238982389923900239012390223903239042390523906239072390823909239102391123912239132391423915239162391723918239192392023921239222392323924239252392623927239282392923930239312393223933239342393523936239372393823939239402394123942239432394423945239462394723948239492395023951239522395323954239552395623957239582395923960239612396223963239642396523966239672396823969239702397123972239732397423975239762397723978239792398023981239822398323984239852398623987239882398923990239912399223993239942399523996239972399823999240002400124002240032400424005240062400724008240092401024011240122401324014240152401624017240182401924020240212402224023240242402524026240272402824029240302403124032240332403424035240362403724038240392404024041240422404324044240452404624047240482404924050240512405224053240542405524056240572405824059240602406124062240632406424065240662406724068240692407024071240722407324074240752407624077240782407924080240812408224083240842408524086240872408824089240902409124092240932409424095240962409724098240992410024101241022410324104241052410624107241082410924110241112411224113241142411524116241172411824119241202412124122241232412424125241262412724128241292413024131241322413324134241352413624137241382413924140241412414224143241442414524146241472414824149241502415124152241532415424155241562415724158241592416024161241622416324164241652416624167241682416924170241712417224173241742417524176241772417824179241802418124182241832418424185241862418724188241892419024191241922419324194241952419624197241982419924200242012420224203242042420524206242072420824209242102421124212242132421424215242162421724218242192422024221242222422324224242252422624227242282422924230242312423224233242342423524236242372423824239242402424124242242432424424245242462424724248242492425024251242522425324254242552425624257242582425924260242612426224263242642426524266242672426824269242702427124272242732427424275242762427724278242792428024281242822428324284242852428624287242882428924290242912429224293242942429524296242972429824299243002430124302243032430424305243062430724308243092431024311243122431324314243152431624317
  1. /*!
  2. Copyright (C) 2016-2020 Timofey Kachalov <[email protected]>
  3. Redistribution and use in source and binary forms, with or without
  4. modification, are permitted provided that the following conditions are met:
  5. * Redistributions of source code must retain the above copyright
  6. notice, this list of conditions and the following disclaimer.
  7. * Redistributions in binary form must reproduce the above copyright
  8. notice, this list of conditions and the following disclaimer in the
  9. documentation and/or other materials provided with the distribution.
  10. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  11. AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  12. IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  13. ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
  14. DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  15. (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  16. LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  17. ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  18. (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  19. THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  20. */
  21. require("source-map-support").install();
  22. module.exports =
  23. /******/ (() => { // webpackBootstrap
  24. /******/ "use strict";
  25. /******/ var __webpack_modules__ = ({
  26. /***/ "./index.ts":
  27. /*!******************!*\
  28. !*** ./index.ts ***!
  29. \******************/
  30. /*! unknown exports (runtime-defined) */
  31. /*! runtime requirements: __webpack_exports__, module, __webpack_require__ */
  32. /***/ ((module, exports, __webpack_require__) => {
  33. Object.defineProperty(exports, "__esModule", ({ value: true }));
  34. const JavaScriptObfuscatorFacade_1 = __webpack_require__(/*! ./src/JavaScriptObfuscatorFacade */ "./src/JavaScriptObfuscatorFacade.ts");
  35. module.exports = JavaScriptObfuscatorFacade_1.JavaScriptObfuscator;
  36. /***/ }),
  37. /***/ "./src/ASTParserFacade.ts":
  38. /*!********************************!*\
  39. !*** ./src/ASTParserFacade.ts ***!
  40. \********************************/
  41. /*! unknown exports (runtime-defined) */
  42. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  43. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  44. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  45. if (k2 === undefined) k2 = k;
  46. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  47. }) : (function(o, m, k, k2) {
  48. if (k2 === undefined) k2 = k;
  49. o[k2] = m[k];
  50. }));
  51. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  52. Object.defineProperty(o, "default", { enumerable: true, value: v });
  53. }) : function(o, v) {
  54. o["default"] = v;
  55. });
  56. var __importStar = (this && this.__importStar) || function (mod) {
  57. if (mod && mod.__esModule) return mod;
  58. var result = {};
  59. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  60. __setModuleDefault(result, mod);
  61. return result;
  62. };
  63. var __importDefault = (this && this.__importDefault) || function (mod) {
  64. return (mod && mod.__esModule) ? mod : { "default": mod };
  65. };
  66. Object.defineProperty(exports, "__esModule", ({ value: true }));
  67. exports.ASTParserFacade = void 0;
  68. const acorn = __importStar(__webpack_require__(/*! acorn */ "acorn"));
  69. const chalk_1 = __importDefault(__webpack_require__(/*! chalk */ "chalk"));
  70. class ASTParserFacade {
  71. static parse(sourceCode, config) {
  72. const sourceTypeLength = ASTParserFacade.sourceTypes.length;
  73. for (let i = 0; i < sourceTypeLength; i++) {
  74. try {
  75. return ASTParserFacade.parseType(sourceCode, config, ASTParserFacade.sourceTypes[i]);
  76. }
  77. catch (error) {
  78. if (i < sourceTypeLength - 1) {
  79. continue;
  80. }
  81. throw new Error(ASTParserFacade.processParsingError(sourceCode, error.message, error.loc));
  82. }
  83. }
  84. throw new Error('Acorn parsing error');
  85. }
  86. static parseType(sourceCode, inputConfig, sourceType) {
  87. const comments = [];
  88. const config = Object.assign(Object.assign({}, inputConfig), { onComment: comments, sourceType });
  89. const program = acorn
  90. .parse(sourceCode, config);
  91. if (comments.length) {
  92. program.comments = comments;
  93. }
  94. return program;
  95. }
  96. static processParsingError(sourceCode, errorMessage, position) {
  97. if (!position || !position.line || !position.column) {
  98. throw new Error(errorMessage);
  99. }
  100. const sourceCodeLines = sourceCode.split(/\r?\n/);
  101. const errorLine = sourceCodeLines[position.line - 1];
  102. if (!errorLine) {
  103. throw new Error(errorMessage);
  104. }
  105. const startErrorIndex = Math.max(0, position.column - ASTParserFacade.nearestSymbolsCount);
  106. const endErrorIndex = Math.min(errorLine.length, position.column + ASTParserFacade.nearestSymbolsCount);
  107. const formattedPointer = ASTParserFacade.colorError('>');
  108. const formattedCodeSlice = `...${errorLine.slice(startErrorIndex, endErrorIndex).replace(/^\s+/, '')}...`;
  109. throw new Error(`ERROR at line ${position.line}: ${errorMessage}\n${formattedPointer} ${formattedCodeSlice}`);
  110. }
  111. }
  112. exports.ASTParserFacade = ASTParserFacade;
  113. ASTParserFacade.colorError = chalk_1.default.red;
  114. ASTParserFacade.nearestSymbolsCount = 15;
  115. ASTParserFacade.sourceTypes = [
  116. 'script',
  117. 'module'
  118. ];
  119. /***/ }),
  120. /***/ "./src/JavaScriptObfuscator.ts":
  121. /*!*************************************!*\
  122. !*** ./src/JavaScriptObfuscator.ts ***!
  123. \*************************************/
  124. /*! unknown exports (runtime-defined) */
  125. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  126. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  127. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  128. if (k2 === undefined) k2 = k;
  129. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  130. }) : (function(o, m, k, k2) {
  131. if (k2 === undefined) k2 = k;
  132. o[k2] = m[k];
  133. }));
  134. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  135. Object.defineProperty(o, "default", { enumerable: true, value: v });
  136. }) : function(o, v) {
  137. o["default"] = v;
  138. });
  139. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  140. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  141. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  142. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  143. return c > 3 && r && Object.defineProperty(target, key, r), r;
  144. };
  145. var __importStar = (this && this.__importStar) || function (mod) {
  146. if (mod && mod.__esModule) return mod;
  147. var result = {};
  148. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  149. __setModuleDefault(result, mod);
  150. return result;
  151. };
  152. var __metadata = (this && this.__metadata) || function (k, v) {
  153. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  154. };
  155. var __param = (this && this.__param) || function (paramIndex, decorator) {
  156. return function (target, key) { decorator(target, key, paramIndex); }
  157. };
  158. var JavaScriptObfuscator_1, _a, _b, _c, _d, _e, _f;
  159. Object.defineProperty(exports, "__esModule", ({ value: true }));
  160. exports.JavaScriptObfuscator = void 0;
  161. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  162. const ServiceIdentifiers_1 = __webpack_require__(/*! ./container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  163. const escodegen = __importStar(__webpack_require__(/*! @javascript-obfuscator/escodegen */ "@javascript-obfuscator/escodegen"));
  164. const TObfuscatedCodeFactory_1 = __webpack_require__(/*! ./types/container/source-code/TObfuscatedCodeFactory */ "./src/types/container/source-code/TObfuscatedCodeFactory.ts");
  165. const ICodeTransformersRunner_1 = __webpack_require__(/*! ./interfaces/code-transformers/ICodeTransformersRunner */ "./src/interfaces/code-transformers/ICodeTransformersRunner.ts");
  166. const ILogger_1 = __webpack_require__(/*! ./interfaces/logger/ILogger */ "./src/interfaces/logger/ILogger.ts");
  167. const IOptions_1 = __webpack_require__(/*! ./interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  168. const IRandomGenerator_1 = __webpack_require__(/*! ./interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  169. const INodeTransformersRunner_1 = __webpack_require__(/*! ./interfaces/node-transformers/INodeTransformersRunner */ "./src/interfaces/node-transformers/INodeTransformersRunner.ts");
  170. const CodeTransformer_1 = __webpack_require__(/*! ./enums/code-transformers/CodeTransformer */ "./src/enums/code-transformers/CodeTransformer.ts");
  171. const CodeTransformationStage_1 = __webpack_require__(/*! ./enums/code-transformers/CodeTransformationStage */ "./src/enums/code-transformers/CodeTransformationStage.ts");
  172. const LoggingMessage_1 = __webpack_require__(/*! ./enums/logger/LoggingMessage */ "./src/enums/logger/LoggingMessage.ts");
  173. const NodeTransformer_1 = __webpack_require__(/*! ./enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  174. const NodeTransformationStage_1 = __webpack_require__(/*! ./enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  175. const EcmaVersion_1 = __webpack_require__(/*! ./constants/EcmaVersion */ "./src/constants/EcmaVersion.ts");
  176. const ASTParserFacade_1 = __webpack_require__(/*! ./ASTParserFacade */ "./src/ASTParserFacade.ts");
  177. const NodeGuards_1 = __webpack_require__(/*! ./node/NodeGuards */ "./src/node/NodeGuards.ts");
  178. const Utils_1 = __webpack_require__(/*! ./utils/Utils */ "./src/utils/Utils.ts");
  179. let JavaScriptObfuscator = JavaScriptObfuscator_1 = class JavaScriptObfuscator {
  180. constructor(codeTransformersRunner, nodeTransformersRunner, randomGenerator, obfuscatedCodeFactory, logger, options) {
  181. this.codeTransformersRunner = codeTransformersRunner;
  182. this.nodeTransformersRunner = nodeTransformersRunner;
  183. this.randomGenerator = randomGenerator;
  184. this.obfuscatedCodeFactory = obfuscatedCodeFactory;
  185. this.logger = logger;
  186. this.options = options;
  187. }
  188. obfuscate(sourceCode) {
  189. if (typeof sourceCode !== 'string') {
  190. sourceCode = '';
  191. }
  192. const timeStart = Date.now();
  193. this.logger.info(LoggingMessage_1.LoggingMessage.Version, Utils_1.Utils.buildVersionMessage("2.9.0", 1605424519076));
  194. this.logger.info(LoggingMessage_1.LoggingMessage.ObfuscationStarted);
  195. this.logger.info(LoggingMessage_1.LoggingMessage.RandomGeneratorSeed, this.randomGenerator.getInputSeed());
  196. sourceCode = this.runCodeTransformationStage(sourceCode, CodeTransformationStage_1.CodeTransformationStage.PreparingTransformers);
  197. const astTree = this.parseCode(sourceCode);
  198. const obfuscatedAstTree = this.transformAstTree(astTree);
  199. const generatorOutput = this.generateCode(sourceCode, obfuscatedAstTree);
  200. generatorOutput.code = this.runCodeTransformationStage(generatorOutput.code, CodeTransformationStage_1.CodeTransformationStage.FinalizingTransformers);
  201. const obfuscationTime = (Date.now() - timeStart) / 1000;
  202. this.logger.success(LoggingMessage_1.LoggingMessage.ObfuscationCompleted, obfuscationTime);
  203. return this.getObfuscatedCode(generatorOutput);
  204. }
  205. parseCode(sourceCode) {
  206. return ASTParserFacade_1.ASTParserFacade.parse(sourceCode, JavaScriptObfuscator_1.parseOptions);
  207. }
  208. transformAstTree(astTree) {
  209. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.Initializing);
  210. const isEmptyAstTree = NodeGuards_1.NodeGuards.isProgramNode(astTree)
  211. && !astTree.body.length
  212. && !astTree.leadingComments
  213. && !astTree.trailingComments;
  214. if (isEmptyAstTree) {
  215. this.logger.warn(LoggingMessage_1.LoggingMessage.EmptySourceCode);
  216. return astTree;
  217. }
  218. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.Preparing);
  219. if (this.options.deadCodeInjection) {
  220. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.DeadCodeInjection);
  221. }
  222. if (this.options.controlFlowFlattening) {
  223. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.ControlFlowFlattening);
  224. }
  225. if (this.options.renameProperties) {
  226. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.RenameProperties);
  227. }
  228. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.Converting);
  229. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.RenameIdentifiers);
  230. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.StringArray);
  231. if (this.options.simplify) {
  232. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.Simplifying);
  233. }
  234. astTree = this.runNodeTransformationStage(astTree, NodeTransformationStage_1.NodeTransformationStage.Finalizing);
  235. return astTree;
  236. }
  237. generateCode(sourceCode, astTree) {
  238. const escodegenParams = Object.assign({}, JavaScriptObfuscator_1.escodegenParams);
  239. if (this.options.sourceMap) {
  240. escodegenParams.sourceMap = this.options.inputFileName || 'sourceMap';
  241. escodegenParams.sourceContent = sourceCode;
  242. }
  243. const generatorOutput = escodegen.generate(astTree, Object.assign(Object.assign({}, escodegenParams), { format: {
  244. compact: this.options.compact
  245. } }));
  246. generatorOutput.map = generatorOutput.map ? generatorOutput.map.toString() : '';
  247. return generatorOutput;
  248. }
  249. getObfuscatedCode(generatorOutput) {
  250. return this.obfuscatedCodeFactory(generatorOutput.code, generatorOutput.map);
  251. }
  252. runCodeTransformationStage(code, codeTransformationStage) {
  253. this.logger.info(LoggingMessage_1.LoggingMessage.CodeTransformationStage, codeTransformationStage);
  254. return this.codeTransformersRunner.transform(code, JavaScriptObfuscator_1.codeTransformersList, codeTransformationStage);
  255. }
  256. runNodeTransformationStage(astTree, nodeTransformationStage) {
  257. this.logger.info(LoggingMessage_1.LoggingMessage.NodeTransformationStage, nodeTransformationStage);
  258. return this.nodeTransformersRunner.transform(astTree, JavaScriptObfuscator_1.nodeTransformersList, nodeTransformationStage);
  259. }
  260. };
  261. JavaScriptObfuscator.parseOptions = {
  262. ecmaVersion: EcmaVersion_1.ecmaVersion,
  263. allowHashBang: true,
  264. allowImportExportEverywhere: true,
  265. allowReturnOutsideFunction: true,
  266. locations: true,
  267. ranges: true
  268. };
  269. JavaScriptObfuscator.escodegenParams = {
  270. comment: true,
  271. verbatim: 'x-verbatim-property',
  272. sourceMapWithCode: true
  273. };
  274. JavaScriptObfuscator.codeTransformersList = [
  275. CodeTransformer_1.CodeTransformer.HashbangOperatorTransformer
  276. ];
  277. JavaScriptObfuscator.nodeTransformersList = [
  278. NodeTransformer_1.NodeTransformer.BooleanLiteralTransformer,
  279. NodeTransformer_1.NodeTransformer.BlockStatementControlFlowTransformer,
  280. NodeTransformer_1.NodeTransformer.BlockStatementSimplifyTransformer,
  281. NodeTransformer_1.NodeTransformer.CommentsTransformer,
  282. NodeTransformer_1.NodeTransformer.CustomCodeHelpersTransformer,
  283. NodeTransformer_1.NodeTransformer.DeadCodeInjectionTransformer,
  284. NodeTransformer_1.NodeTransformer.EscapeSequenceTransformer,
  285. NodeTransformer_1.NodeTransformer.EvalCallExpressionTransformer,
  286. NodeTransformer_1.NodeTransformer.ExportSpecifierTransformer,
  287. NodeTransformer_1.NodeTransformer.ExpressionStatementsMergeTransformer,
  288. NodeTransformer_1.NodeTransformer.FunctionControlFlowTransformer,
  289. NodeTransformer_1.NodeTransformer.IfStatementSimplifyTransformer,
  290. NodeTransformer_1.NodeTransformer.LabeledStatementTransformer,
  291. NodeTransformer_1.NodeTransformer.RenamePropertiesTransformer,
  292. NodeTransformer_1.NodeTransformer.MemberExpressionTransformer,
  293. NodeTransformer_1.NodeTransformer.MetadataTransformer,
  294. NodeTransformer_1.NodeTransformer.MethodDefinitionTransformer,
  295. NodeTransformer_1.NodeTransformer.NumberLiteralTransformer,
  296. NodeTransformer_1.NodeTransformer.NumberToNumericalExpressionTransformer,
  297. NodeTransformer_1.NodeTransformer.ObfuscatingGuardsTransformer,
  298. NodeTransformer_1.NodeTransformer.ObjectExpressionKeysTransformer,
  299. NodeTransformer_1.NodeTransformer.ObjectExpressionTransformer,
  300. NodeTransformer_1.NodeTransformer.ObjectPatternPropertiesTransformer,
  301. NodeTransformer_1.NodeTransformer.ParentificationTransformer,
  302. NodeTransformer_1.NodeTransformer.ScopeIdentifiersTransformer,
  303. NodeTransformer_1.NodeTransformer.SplitStringTransformer,
  304. NodeTransformer_1.NodeTransformer.StringArrayScopeCallsWrapperTransformer,
  305. NodeTransformer_1.NodeTransformer.StringArrayTransformer,
  306. NodeTransformer_1.NodeTransformer.TemplateLiteralTransformer,
  307. NodeTransformer_1.NodeTransformer.VariableDeclarationsMergeTransformer,
  308. NodeTransformer_1.NodeTransformer.VariablePreserveTransformer
  309. ];
  310. JavaScriptObfuscator = JavaScriptObfuscator_1 = __decorate([
  311. inversify_1.injectable(),
  312. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICodeTransformersRunner)),
  313. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformersRunner)),
  314. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  315. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IObfuscatedCode)),
  316. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ILogger)),
  317. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  318. __metadata("design:paramtypes", [typeof (_a = typeof ICodeTransformersRunner_1.ICodeTransformersRunner !== "undefined" && ICodeTransformersRunner_1.ICodeTransformersRunner) === "function" ? _a : Object, typeof (_b = typeof INodeTransformersRunner_1.INodeTransformersRunner !== "undefined" && INodeTransformersRunner_1.INodeTransformersRunner) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof TObfuscatedCodeFactory_1.TObfuscatedCodeFactory !== "undefined" && TObfuscatedCodeFactory_1.TObfuscatedCodeFactory) === "function" ? _d : Object, typeof (_e = typeof ILogger_1.ILogger !== "undefined" && ILogger_1.ILogger) === "function" ? _e : Object, typeof (_f = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _f : Object])
  319. ], JavaScriptObfuscator);
  320. exports.JavaScriptObfuscator = JavaScriptObfuscator;
  321. /***/ }),
  322. /***/ "./src/JavaScriptObfuscatorFacade.ts":
  323. /*!*******************************************!*\
  324. !*** ./src/JavaScriptObfuscatorFacade.ts ***!
  325. \*******************************************/
  326. /*! flagged exports */
  327. /*! export JavaScriptObfuscator [provided] [no usage info] [missing usage info prevents renaming] */
  328. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  329. /*! other exports [not provided] [no usage info] */
  330. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  331. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  332. var _a;
  333. Object.defineProperty(exports, "__esModule", ({ value: true }));
  334. exports.JavaScriptObfuscator = void 0;
  335. __webpack_require__(/*! reflect-metadata */ "reflect-metadata");
  336. const ServiceIdentifiers_1 = __webpack_require__(/*! ./container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  337. const InversifyContainerFacade_1 = __webpack_require__(/*! ./container/InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  338. const Options_1 = __webpack_require__(/*! ./options/Options */ "./src/options/Options.ts");
  339. const Utils_1 = __webpack_require__(/*! ./utils/Utils */ "./src/utils/Utils.ts");
  340. class JavaScriptObfuscatorFacade {
  341. static obfuscate(sourceCode, inputOptions = {}) {
  342. const inversifyContainerFacade = new InversifyContainerFacade_1.InversifyContainerFacade();
  343. inversifyContainerFacade.load(sourceCode, '', inputOptions);
  344. const javaScriptObfuscator = inversifyContainerFacade
  345. .get(ServiceIdentifiers_1.ServiceIdentifiers.IJavaScriptObfuscator);
  346. const obfuscatedCode = javaScriptObfuscator.obfuscate(sourceCode);
  347. inversifyContainerFacade.unload();
  348. return obfuscatedCode;
  349. }
  350. static obfuscateMultiple(sourceCodesObject, inputOptions = {}) {
  351. if (typeof sourceCodesObject !== 'object') {
  352. throw new Error('Source codes object should be a plain object');
  353. }
  354. return Object
  355. .keys(sourceCodesObject)
  356. .reduce((acc, sourceCodeIdentifier, index) => {
  357. const identifiersPrefix = Utils_1.Utils.getIdentifiersPrefixForMultipleSources(inputOptions.identifiersPrefix, index);
  358. const sourceCode = sourceCodesObject[sourceCodeIdentifier];
  359. const sourceCodeOptions = Object.assign(Object.assign({}, inputOptions), { identifiersPrefix });
  360. return Object.assign(Object.assign({}, acc), { [sourceCodeIdentifier]: JavaScriptObfuscatorFacade.obfuscate(sourceCode, sourceCodeOptions) });
  361. }, {});
  362. }
  363. static getOptionsByPreset(optionsPreset) {
  364. return Options_1.Options.getOptionsByPreset(optionsPreset);
  365. }
  366. }
  367. exports.JavaScriptObfuscator = JavaScriptObfuscatorFacade;
  368. JavaScriptObfuscatorFacade.version = (_a = "2.9.0") !== null && _a !== void 0 ? _a : 'unknown';
  369. /***/ }),
  370. /***/ "./src/analyzers/calls-graph-analyzer/CallsGraphAnalyzer.ts":
  371. /*!******************************************************************!*\
  372. !*** ./src/analyzers/calls-graph-analyzer/CallsGraphAnalyzer.ts ***!
  373. \******************************************************************/
  374. /*! unknown exports (runtime-defined) */
  375. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  376. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  377. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  378. if (k2 === undefined) k2 = k;
  379. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  380. }) : (function(o, m, k, k2) {
  381. if (k2 === undefined) k2 = k;
  382. o[k2] = m[k];
  383. }));
  384. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  385. Object.defineProperty(o, "default", { enumerable: true, value: v });
  386. }) : function(o, v) {
  387. o["default"] = v;
  388. });
  389. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  390. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  391. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  392. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  393. return c > 3 && r && Object.defineProperty(target, key, r), r;
  394. };
  395. var __importStar = (this && this.__importStar) || function (mod) {
  396. if (mod && mod.__esModule) return mod;
  397. var result = {};
  398. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  399. __setModuleDefault(result, mod);
  400. return result;
  401. };
  402. var __metadata = (this && this.__metadata) || function (k, v) {
  403. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  404. };
  405. var __param = (this && this.__param) || function (paramIndex, decorator) {
  406. return function (target, key) { decorator(target, key, paramIndex); }
  407. };
  408. var CallsGraphAnalyzer_1, _a;
  409. Object.defineProperty(exports, "__esModule", ({ value: true }));
  410. exports.CallsGraphAnalyzer = void 0;
  411. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  412. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  413. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  414. const TCalleeDataExtractorFactory_1 = __webpack_require__(/*! ../../types/container/calls-graph-analyzer/TCalleeDataExtractorFactory */ "./src/types/container/calls-graph-analyzer/TCalleeDataExtractorFactory.ts");
  415. const CalleeDataExtractor_1 = __webpack_require__(/*! ../../enums/analyzers/calls-graph-analyzer/CalleeDataExtractor */ "./src/enums/analyzers/calls-graph-analyzer/CalleeDataExtractor.ts");
  416. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  417. const NodeStatementUtils_1 = __webpack_require__(/*! ../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  418. let CallsGraphAnalyzer = CallsGraphAnalyzer_1 = class CallsGraphAnalyzer {
  419. constructor(calleeDataExtractorFactory) {
  420. this.calleeDataExtractorFactory = calleeDataExtractorFactory;
  421. }
  422. static getLimitIndex(blockScopeBodyLength) {
  423. const lastIndex = blockScopeBodyLength - 1;
  424. const limitThresholdActivationIndex = CallsGraphAnalyzer_1.limitThresholdActivationLength - 1;
  425. let limitIndex = lastIndex;
  426. if (lastIndex > limitThresholdActivationIndex) {
  427. limitIndex = Math.round(limitThresholdActivationIndex + (lastIndex * CallsGraphAnalyzer_1.limitThreshold));
  428. if (limitIndex > lastIndex) {
  429. limitIndex = lastIndex;
  430. }
  431. }
  432. return limitIndex;
  433. }
  434. analyze(astTree) {
  435. return this.analyzeRecursive(astTree.body);
  436. }
  437. analyzeRecursive(blockScopeBody) {
  438. const limitIndex = CallsGraphAnalyzer_1.getLimitIndex(blockScopeBody.length);
  439. const callsGraphData = [];
  440. const blockScopeBodyLength = blockScopeBody.length;
  441. for (let index = 0; index < blockScopeBodyLength; index++) {
  442. if (index > limitIndex) {
  443. break;
  444. }
  445. const blockScopeBodyNode = blockScopeBody[index];
  446. estraverse.traverse(blockScopeBodyNode, {
  447. enter: (node) => {
  448. if (!NodeGuards_1.NodeGuards.isCallExpressionNode(node)) {
  449. return;
  450. }
  451. if (blockScopeBodyNode.parentNode !== NodeStatementUtils_1.NodeStatementUtils.getParentNodeWithStatements(node)) {
  452. return estraverse.VisitorOption.Skip;
  453. }
  454. this.analyzeCallExpressionNode(callsGraphData, blockScopeBody, node);
  455. }
  456. });
  457. }
  458. return callsGraphData;
  459. }
  460. analyzeCallExpressionNode(callsGraphData, blockScopeBody, callExpressionNode) {
  461. CallsGraphAnalyzer_1.calleeDataExtractorsList.forEach((calleeDataExtractorName) => {
  462. const calleeData = this.calleeDataExtractorFactory(calleeDataExtractorName)
  463. .extract(blockScopeBody, callExpressionNode.callee);
  464. if (!calleeData) {
  465. return;
  466. }
  467. callsGraphData.push(Object.assign(Object.assign({}, calleeData), { callsGraph: this.analyzeRecursive(calleeData.callee.body) }));
  468. });
  469. }
  470. };
  471. CallsGraphAnalyzer.calleeDataExtractorsList = [
  472. CalleeDataExtractor_1.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,
  473. CalleeDataExtractor_1.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,
  474. CalleeDataExtractor_1.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor
  475. ];
  476. CallsGraphAnalyzer.limitThresholdActivationLength = 25;
  477. CallsGraphAnalyzer.limitThreshold = 0.002;
  478. CallsGraphAnalyzer = CallsGraphAnalyzer_1 = __decorate([
  479. inversify_1.injectable(),
  480. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICalleeDataExtractor)),
  481. __metadata("design:paramtypes", [typeof (_a = typeof TCalleeDataExtractorFactory_1.TCalleeDataExtractorFactory !== "undefined" && TCalleeDataExtractorFactory_1.TCalleeDataExtractorFactory) === "function" ? _a : Object])
  482. ], CallsGraphAnalyzer);
  483. exports.CallsGraphAnalyzer = CallsGraphAnalyzer;
  484. /***/ }),
  485. /***/ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/AbstractCalleeDataExtractor.ts":
  486. /*!**************************************************************************************************!*\
  487. !*** ./src/analyzers/calls-graph-analyzer/callee-data-extractors/AbstractCalleeDataExtractor.ts ***!
  488. \**************************************************************************************************/
  489. /*! unknown exports (runtime-defined) */
  490. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  491. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  492. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  493. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  494. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  495. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  496. return c > 3 && r && Object.defineProperty(target, key, r), r;
  497. };
  498. Object.defineProperty(exports, "__esModule", ({ value: true }));
  499. exports.AbstractCalleeDataExtractor = void 0;
  500. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  501. let AbstractCalleeDataExtractor = class AbstractCalleeDataExtractor {
  502. };
  503. AbstractCalleeDataExtractor = __decorate([
  504. inversify_1.injectable()
  505. ], AbstractCalleeDataExtractor);
  506. exports.AbstractCalleeDataExtractor = AbstractCalleeDataExtractor;
  507. /***/ }),
  508. /***/ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionDeclarationCalleeDataExtractor.ts":
  509. /*!*************************************************************************************************************!*\
  510. !*** ./src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionDeclarationCalleeDataExtractor.ts ***!
  511. \*************************************************************************************************************/
  512. /*! unknown exports (runtime-defined) */
  513. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  514. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  515. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  516. if (k2 === undefined) k2 = k;
  517. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  518. }) : (function(o, m, k, k2) {
  519. if (k2 === undefined) k2 = k;
  520. o[k2] = m[k];
  521. }));
  522. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  523. Object.defineProperty(o, "default", { enumerable: true, value: v });
  524. }) : function(o, v) {
  525. o["default"] = v;
  526. });
  527. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  528. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  529. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  530. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  531. return c > 3 && r && Object.defineProperty(target, key, r), r;
  532. };
  533. var __importStar = (this && this.__importStar) || function (mod) {
  534. if (mod && mod.__esModule) return mod;
  535. var result = {};
  536. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  537. __setModuleDefault(result, mod);
  538. return result;
  539. };
  540. Object.defineProperty(exports, "__esModule", ({ value: true }));
  541. exports.FunctionDeclarationCalleeDataExtractor = void 0;
  542. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  543. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  544. const AbstractCalleeDataExtractor_1 = __webpack_require__(/*! ./AbstractCalleeDataExtractor */ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/AbstractCalleeDataExtractor.ts");
  545. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  546. const NodeStatementUtils_1 = __webpack_require__(/*! ../../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  547. let FunctionDeclarationCalleeDataExtractor = class FunctionDeclarationCalleeDataExtractor extends AbstractCalleeDataExtractor_1.AbstractCalleeDataExtractor {
  548. extract(blockScopeBody, callee) {
  549. if (!NodeGuards_1.NodeGuards.isIdentifierNode(callee)) {
  550. return null;
  551. }
  552. const calleeBlockStatement = this.getCalleeBlockStatement(NodeStatementUtils_1.NodeStatementUtils.getParentNodeWithStatements(blockScopeBody[0]), callee.name);
  553. if (!calleeBlockStatement) {
  554. return null;
  555. }
  556. return {
  557. callee: calleeBlockStatement,
  558. name: callee.name
  559. };
  560. }
  561. getCalleeBlockStatement(targetNode, name) {
  562. let calleeBlockStatement = null;
  563. estraverse.traverse(targetNode, {
  564. enter: (node) => {
  565. if (NodeGuards_1.NodeGuards.isFunctionDeclarationNode(node) && node.id.name === name) {
  566. calleeBlockStatement = node.body;
  567. return estraverse.VisitorOption.Break;
  568. }
  569. }
  570. });
  571. return calleeBlockStatement;
  572. }
  573. };
  574. FunctionDeclarationCalleeDataExtractor = __decorate([
  575. inversify_1.injectable()
  576. ], FunctionDeclarationCalleeDataExtractor);
  577. exports.FunctionDeclarationCalleeDataExtractor = FunctionDeclarationCalleeDataExtractor;
  578. /***/ }),
  579. /***/ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionExpressionCalleeDataExtractor.ts":
  580. /*!************************************************************************************************************!*\
  581. !*** ./src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionExpressionCalleeDataExtractor.ts ***!
  582. \************************************************************************************************************/
  583. /*! unknown exports (runtime-defined) */
  584. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  585. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  586. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  587. if (k2 === undefined) k2 = k;
  588. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  589. }) : (function(o, m, k, k2) {
  590. if (k2 === undefined) k2 = k;
  591. o[k2] = m[k];
  592. }));
  593. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  594. Object.defineProperty(o, "default", { enumerable: true, value: v });
  595. }) : function(o, v) {
  596. o["default"] = v;
  597. });
  598. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  599. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  600. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  601. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  602. return c > 3 && r && Object.defineProperty(target, key, r), r;
  603. };
  604. var __importStar = (this && this.__importStar) || function (mod) {
  605. if (mod && mod.__esModule) return mod;
  606. var result = {};
  607. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  608. __setModuleDefault(result, mod);
  609. return result;
  610. };
  611. Object.defineProperty(exports, "__esModule", ({ value: true }));
  612. exports.FunctionExpressionCalleeDataExtractor = void 0;
  613. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  614. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  615. const AbstractCalleeDataExtractor_1 = __webpack_require__(/*! ./AbstractCalleeDataExtractor */ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/AbstractCalleeDataExtractor.ts");
  616. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  617. const NodeStatementUtils_1 = __webpack_require__(/*! ../../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  618. let FunctionExpressionCalleeDataExtractor = class FunctionExpressionCalleeDataExtractor extends AbstractCalleeDataExtractor_1.AbstractCalleeDataExtractor {
  619. extract(blockScopeBody, callee) {
  620. let calleeName = null;
  621. let calleeBlockStatement = null;
  622. if (NodeGuards_1.NodeGuards.isIdentifierNode(callee)) {
  623. calleeName = callee.name;
  624. calleeBlockStatement = this.getCalleeBlockStatement(NodeStatementUtils_1.NodeStatementUtils.getParentNodeWithStatements(blockScopeBody[0]), callee.name);
  625. }
  626. else if (NodeGuards_1.NodeGuards.isFunctionExpressionNode(callee)) {
  627. calleeName = null;
  628. calleeBlockStatement = callee.body;
  629. }
  630. if (!calleeBlockStatement) {
  631. return null;
  632. }
  633. return {
  634. callee: calleeBlockStatement,
  635. name: calleeName
  636. };
  637. }
  638. getCalleeBlockStatement(targetNode, name) {
  639. let calleeBlockStatement = null;
  640. estraverse.traverse(targetNode, {
  641. enter: (node, parentNode) => {
  642. if (NodeGuards_1.NodeGuards.isFunctionExpressionNode(node) &&
  643. parentNode &&
  644. NodeGuards_1.NodeGuards.isVariableDeclaratorNode(parentNode) &&
  645. NodeGuards_1.NodeGuards.isIdentifierNode(parentNode.id) &&
  646. parentNode.id.name === name) {
  647. calleeBlockStatement = node.body;
  648. return estraverse.VisitorOption.Break;
  649. }
  650. }
  651. });
  652. return calleeBlockStatement;
  653. }
  654. };
  655. FunctionExpressionCalleeDataExtractor = __decorate([
  656. inversify_1.injectable()
  657. ], FunctionExpressionCalleeDataExtractor);
  658. exports.FunctionExpressionCalleeDataExtractor = FunctionExpressionCalleeDataExtractor;
  659. /***/ }),
  660. /***/ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts":
  661. /*!**********************************************************************************************************!*\
  662. !*** ./src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts ***!
  663. \**********************************************************************************************************/
  664. /*! unknown exports (runtime-defined) */
  665. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  666. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  667. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  668. if (k2 === undefined) k2 = k;
  669. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  670. }) : (function(o, m, k, k2) {
  671. if (k2 === undefined) k2 = k;
  672. o[k2] = m[k];
  673. }));
  674. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  675. Object.defineProperty(o, "default", { enumerable: true, value: v });
  676. }) : function(o, v) {
  677. o["default"] = v;
  678. });
  679. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  680. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  681. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  682. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  683. return c > 3 && r && Object.defineProperty(target, key, r), r;
  684. };
  685. var __importStar = (this && this.__importStar) || function (mod) {
  686. if (mod && mod.__esModule) return mod;
  687. var result = {};
  688. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  689. __setModuleDefault(result, mod);
  690. return result;
  691. };
  692. var ObjectExpressionCalleeDataExtractor_1;
  693. Object.defineProperty(exports, "__esModule", ({ value: true }));
  694. exports.ObjectExpressionCalleeDataExtractor = void 0;
  695. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  696. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  697. const AbstractCalleeDataExtractor_1 = __webpack_require__(/*! ./AbstractCalleeDataExtractor */ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/AbstractCalleeDataExtractor.ts");
  698. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  699. const NodeStatementUtils_1 = __webpack_require__(/*! ../../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  700. let ObjectExpressionCalleeDataExtractor = ObjectExpressionCalleeDataExtractor_1 = class ObjectExpressionCalleeDataExtractor extends AbstractCalleeDataExtractor_1.AbstractCalleeDataExtractor {
  701. static isValidTargetPropertyNode(propertyNode, nextItemInCallsChain) {
  702. if (!propertyNode.key) {
  703. return false;
  704. }
  705. const isTargetPropertyNodeWithIdentifierKey = NodeGuards_1.NodeGuards.isIdentifierNode(propertyNode.key) && propertyNode.key.name === nextItemInCallsChain;
  706. const isTargetPropertyNodeWithLiteralKey = NodeGuards_1.NodeGuards.isLiteralNode(propertyNode.key) &&
  707. Boolean(propertyNode.key.value) &&
  708. propertyNode.key.value === nextItemInCallsChain;
  709. return isTargetPropertyNodeWithIdentifierKey || isTargetPropertyNodeWithLiteralKey;
  710. }
  711. extract(blockScopeBody, callee) {
  712. if (!NodeGuards_1.NodeGuards.isMemberExpressionNode(callee)) {
  713. return null;
  714. }
  715. const objectMembersCallsChain = this.createObjectMembersCallsChain([], callee);
  716. if (!objectMembersCallsChain.length) {
  717. return null;
  718. }
  719. const functionExpressionName = objectMembersCallsChain[objectMembersCallsChain.length - 1];
  720. const calleeBlockStatement = this.getCalleeBlockStatement(NodeStatementUtils_1.NodeStatementUtils.getParentNodeWithStatements(blockScopeBody[0]), objectMembersCallsChain);
  721. if (!calleeBlockStatement) {
  722. return null;
  723. }
  724. return {
  725. callee: calleeBlockStatement,
  726. name: functionExpressionName
  727. };
  728. }
  729. createObjectMembersCallsChain(currentChain, memberExpression) {
  730. if (NodeGuards_1.NodeGuards.isIdentifierNode(memberExpression.property) && !memberExpression.computed) {
  731. currentChain.unshift(memberExpression.property.name);
  732. }
  733. else if (NodeGuards_1.NodeGuards.isLiteralNode(memberExpression.property) &&
  734. (typeof memberExpression.property.value === 'string' ||
  735. typeof memberExpression.property.value === 'number')) {
  736. currentChain.unshift(memberExpression.property.value);
  737. }
  738. else {
  739. return currentChain;
  740. }
  741. if (NodeGuards_1.NodeGuards.isMemberExpressionNode(memberExpression.object)) {
  742. return this.createObjectMembersCallsChain(currentChain, memberExpression.object);
  743. }
  744. else if (NodeGuards_1.NodeGuards.isIdentifierNode(memberExpression.object)) {
  745. currentChain.unshift(memberExpression.object.name);
  746. }
  747. return currentChain;
  748. }
  749. getCalleeBlockStatement(targetNode, objectMembersCallsChain) {
  750. const objectName = objectMembersCallsChain.shift();
  751. if (!objectName) {
  752. return null;
  753. }
  754. let calleeBlockStatement = null;
  755. estraverse.traverse(targetNode, {
  756. enter: (node) => {
  757. if (NodeGuards_1.NodeGuards.isVariableDeclaratorNode(node) &&
  758. NodeGuards_1.NodeGuards.isIdentifierNode(node.id) &&
  759. node.init &&
  760. NodeGuards_1.NodeGuards.isObjectExpressionNode(node.init) &&
  761. node.id.name === objectName) {
  762. calleeBlockStatement = this.findCalleeBlockStatement(node.init.properties, objectMembersCallsChain);
  763. return estraverse.VisitorOption.Break;
  764. }
  765. }
  766. });
  767. return calleeBlockStatement;
  768. }
  769. findCalleeBlockStatement(objectExpressionProperties, objectMembersCallsChain) {
  770. const nextItemInCallsChain = objectMembersCallsChain.shift();
  771. if (!nextItemInCallsChain) {
  772. return null;
  773. }
  774. for (const propertyNode of objectExpressionProperties) {
  775. if (!NodeGuards_1.NodeGuards.isPropertyNode(propertyNode)) {
  776. continue;
  777. }
  778. if (!ObjectExpressionCalleeDataExtractor_1.isValidTargetPropertyNode(propertyNode, nextItemInCallsChain)) {
  779. continue;
  780. }
  781. if (NodeGuards_1.NodeGuards.isObjectExpressionNode(propertyNode.value)) {
  782. return this.findCalleeBlockStatement(propertyNode.value.properties, objectMembersCallsChain);
  783. }
  784. if (NodeGuards_1.NodeGuards.isFunctionExpressionNode(propertyNode.value)) {
  785. return propertyNode.value.body;
  786. }
  787. }
  788. return null;
  789. }
  790. };
  791. ObjectExpressionCalleeDataExtractor = ObjectExpressionCalleeDataExtractor_1 = __decorate([
  792. inversify_1.injectable()
  793. ], ObjectExpressionCalleeDataExtractor);
  794. exports.ObjectExpressionCalleeDataExtractor = ObjectExpressionCalleeDataExtractor;
  795. /***/ }),
  796. /***/ "./src/analyzers/number-numerical-expression-analyzer/NumberNumericalExpressionAnalyzer.ts":
  797. /*!*************************************************************************************************!*\
  798. !*** ./src/analyzers/number-numerical-expression-analyzer/NumberNumericalExpressionAnalyzer.ts ***!
  799. \*************************************************************************************************/
  800. /*! unknown exports (runtime-defined) */
  801. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  802. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  803. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  804. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  805. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  806. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  807. return c > 3 && r && Object.defineProperty(target, key, r), r;
  808. };
  809. var __metadata = (this && this.__metadata) || function (k, v) {
  810. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  811. };
  812. var __param = (this && this.__param) || function (paramIndex, decorator) {
  813. return function (target, key) { decorator(target, key, paramIndex); }
  814. };
  815. var NumberNumericalExpressionAnalyzer_1, _a;
  816. Object.defineProperty(exports, "__esModule", ({ value: true }));
  817. exports.NumberNumericalExpressionAnalyzer = void 0;
  818. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  819. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  820. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  821. const NumberUtils_1 = __webpack_require__(/*! ../../utils/NumberUtils */ "./src/utils/NumberUtils.ts");
  822. let NumberNumericalExpressionAnalyzer = NumberNumericalExpressionAnalyzer_1 = class NumberNumericalExpressionAnalyzer {
  823. constructor(randomGenerator) {
  824. this.numberFactorsMap = new Map();
  825. this.randomGenerator = randomGenerator;
  826. }
  827. analyze(number) {
  828. if (isNaN(number)) {
  829. throw new Error('Given value is NaN');
  830. }
  831. if (NumberUtils_1.NumberUtils.isUnsafeNumber(number)) {
  832. return [number];
  833. }
  834. const additionParts = this.generateAdditionParts(number);
  835. return additionParts.map((addition) => this.mixWithMultiplyParts(addition));
  836. }
  837. generateAdditionParts(number) {
  838. const additionParts = [];
  839. const upperNumberLimit = Math.min(Math.abs(number * 2), Number.MAX_SAFE_INTEGER);
  840. const from = Math.min(-10000, -upperNumberLimit);
  841. const to = Math.max(10000, upperNumberLimit);
  842. let temporarySum = 0;
  843. for (let i = 0; i < NumberNumericalExpressionAnalyzer_1.additionalParts; i++) {
  844. if (i < NumberNumericalExpressionAnalyzer_1.additionalParts - 1) {
  845. let addition = this.randomGenerator.getRandomInteger(from, to);
  846. const isUnsafeCombination = NumberUtils_1.NumberUtils.isUnsafeNumber(temporarySum + addition);
  847. if (isUnsafeCombination) {
  848. addition = -addition;
  849. }
  850. additionParts.push(addition);
  851. temporarySum += addition;
  852. }
  853. else {
  854. const combination = number - temporarySum;
  855. const isUnsafeCombination = NumberUtils_1.NumberUtils.isUnsafeNumber(combination);
  856. if (isUnsafeCombination) {
  857. additionParts.push(0 - temporarySum);
  858. additionParts.push(number);
  859. }
  860. else {
  861. additionParts.push(combination);
  862. }
  863. }
  864. }
  865. return additionParts;
  866. }
  867. mixWithMultiplyParts(number) {
  868. var _a;
  869. const shouldMixWithMultiplyParts = this.randomGenerator.getMathRandom() > 0.5;
  870. if (!shouldMixWithMultiplyParts || number === 0) {
  871. return number;
  872. }
  873. let factors = (_a = this.numberFactorsMap.get(number)) !== null && _a !== void 0 ? _a : null;
  874. if (!factors) {
  875. factors = NumberUtils_1.NumberUtils.getFactors(number);
  876. this.numberFactorsMap.set(number, factors);
  877. }
  878. if (!factors.length) {
  879. return number;
  880. }
  881. const factor = factors[this.randomGenerator.getRandomInteger(0, factors.length - 1)];
  882. return [factor, number / factor];
  883. }
  884. };
  885. NumberNumericalExpressionAnalyzer.additionalParts = 3;
  886. NumberNumericalExpressionAnalyzer = NumberNumericalExpressionAnalyzer_1 = __decorate([
  887. inversify_1.injectable(),
  888. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  889. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object])
  890. ], NumberNumericalExpressionAnalyzer);
  891. exports.NumberNumericalExpressionAnalyzer = NumberNumericalExpressionAnalyzer;
  892. /***/ }),
  893. /***/ "./src/analyzers/prevailing-kind-of-variables-analyzer/PrevailingKindOfVariablesAnalyzer.ts":
  894. /*!**************************************************************************************************!*\
  895. !*** ./src/analyzers/prevailing-kind-of-variables-analyzer/PrevailingKindOfVariablesAnalyzer.ts ***!
  896. \**************************************************************************************************/
  897. /*! unknown exports (runtime-defined) */
  898. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  899. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  900. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  901. if (k2 === undefined) k2 = k;
  902. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  903. }) : (function(o, m, k, k2) {
  904. if (k2 === undefined) k2 = k;
  905. o[k2] = m[k];
  906. }));
  907. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  908. Object.defineProperty(o, "default", { enumerable: true, value: v });
  909. }) : function(o, v) {
  910. o["default"] = v;
  911. });
  912. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  913. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  914. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  915. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  916. return c > 3 && r && Object.defineProperty(target, key, r), r;
  917. };
  918. var __importStar = (this && this.__importStar) || function (mod) {
  919. if (mod && mod.__esModule) return mod;
  920. var result = {};
  921. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  922. __setModuleDefault(result, mod);
  923. return result;
  924. };
  925. var __metadata = (this && this.__metadata) || function (k, v) {
  926. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  927. };
  928. var __param = (this && this.__param) || function (paramIndex, decorator) {
  929. return function (target, key) { decorator(target, key, paramIndex); }
  930. };
  931. var PrevailingKindOfVariablesAnalyzer_1, _a;
  932. Object.defineProperty(exports, "__esModule", ({ value: true }));
  933. exports.PrevailingKindOfVariablesAnalyzer = void 0;
  934. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  935. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  936. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  937. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  938. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  939. let PrevailingKindOfVariablesAnalyzer = PrevailingKindOfVariablesAnalyzer_1 = class PrevailingKindOfVariablesAnalyzer {
  940. constructor(arrayUtils) {
  941. this.prevailingKindOfVariables = PrevailingKindOfVariablesAnalyzer_1.defaultKindOfVariables;
  942. this.arrayUtils = arrayUtils;
  943. }
  944. analyze(astTree) {
  945. var _a;
  946. const variableKinds = [];
  947. estraverse.traverse(astTree, {
  948. enter: (node) => {
  949. if (!NodeGuards_1.NodeGuards.isVariableDeclarationNode(node)) {
  950. return;
  951. }
  952. variableKinds.push(node.kind);
  953. }
  954. });
  955. this.prevailingKindOfVariables = (_a = this.arrayUtils.findMostOccurringElement(variableKinds)) !== null && _a !== void 0 ? _a : PrevailingKindOfVariablesAnalyzer_1.defaultKindOfVariables;
  956. }
  957. getPrevailingKind() {
  958. return this.prevailingKindOfVariables;
  959. }
  960. };
  961. PrevailingKindOfVariablesAnalyzer.defaultKindOfVariables = 'var';
  962. PrevailingKindOfVariablesAnalyzer = PrevailingKindOfVariablesAnalyzer_1 = __decorate([
  963. inversify_1.injectable(),
  964. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  965. __metadata("design:paramtypes", [typeof (_a = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _a : Object])
  966. ], PrevailingKindOfVariablesAnalyzer);
  967. exports.PrevailingKindOfVariablesAnalyzer = PrevailingKindOfVariablesAnalyzer;
  968. /***/ }),
  969. /***/ "./src/analyzers/scope-analyzer/ScopeAnalyzer.ts":
  970. /*!*******************************************************!*\
  971. !*** ./src/analyzers/scope-analyzer/ScopeAnalyzer.ts ***!
  972. \*******************************************************/
  973. /*! unknown exports (runtime-defined) */
  974. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  975. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  976. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  977. if (k2 === undefined) k2 = k;
  978. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  979. }) : (function(o, m, k, k2) {
  980. if (k2 === undefined) k2 = k;
  981. o[k2] = m[k];
  982. }));
  983. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  984. Object.defineProperty(o, "default", { enumerable: true, value: v });
  985. }) : function(o, v) {
  986. o["default"] = v;
  987. });
  988. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  989. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  990. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  991. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  992. return c > 3 && r && Object.defineProperty(target, key, r), r;
  993. };
  994. var __importStar = (this && this.__importStar) || function (mod) {
  995. if (mod && mod.__esModule) return mod;
  996. var result = {};
  997. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  998. __setModuleDefault(result, mod);
  999. return result;
  1000. };
  1001. var ScopeAnalyzer_1;
  1002. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1003. exports.ScopeAnalyzer = void 0;
  1004. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1005. const eslintScope = __importStar(__webpack_require__(/*! eslint-scope */ "eslint-scope"));
  1006. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  1007. const EcmaVersion_1 = __webpack_require__(/*! ../../constants/EcmaVersion */ "./src/constants/EcmaVersion.ts");
  1008. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  1009. let ScopeAnalyzer = ScopeAnalyzer_1 = class ScopeAnalyzer {
  1010. constructor() {
  1011. this.scopeManager = null;
  1012. }
  1013. static attachMissingRanges(astTree) {
  1014. estraverse.replace(astTree, {
  1015. enter: (node, parentNode) => {
  1016. var _a, _b, _c, _d;
  1017. if (!node.range) {
  1018. node.range = [
  1019. (_b = (_a = parentNode === null || parentNode === void 0 ? void 0 : parentNode.range) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : ScopeAnalyzer_1.emptyRangeValue,
  1020. (_d = (_c = parentNode === null || parentNode === void 0 ? void 0 : parentNode.range) === null || _c === void 0 ? void 0 : _c[1]) !== null && _d !== void 0 ? _d : ScopeAnalyzer_1.emptyRangeValue
  1021. ];
  1022. }
  1023. return node;
  1024. }
  1025. });
  1026. }
  1027. static isRootNode(node) {
  1028. return NodeGuards_1.NodeGuards.isProgramNode(node) || node.parentNode === node;
  1029. }
  1030. analyze(astTree) {
  1031. const sourceTypeLength = ScopeAnalyzer_1.sourceTypes.length;
  1032. ScopeAnalyzer_1.attachMissingRanges(astTree);
  1033. for (let i = 0; i < sourceTypeLength; i++) {
  1034. try {
  1035. this.scopeManager = eslintScope.analyze(astTree, Object.assign(Object.assign({}, ScopeAnalyzer_1.eslintScopeOptions), { sourceType: ScopeAnalyzer_1.sourceTypes[i] }));
  1036. return;
  1037. }
  1038. catch (error) {
  1039. if (i < sourceTypeLength - 1) {
  1040. continue;
  1041. }
  1042. throw new Error(error);
  1043. }
  1044. }
  1045. throw new Error('Scope analyzing error');
  1046. }
  1047. acquireScope(node) {
  1048. if (!this.scopeManager) {
  1049. throw new Error('Scope manager is not defined');
  1050. }
  1051. const scope = this.scopeManager.acquire(node, ScopeAnalyzer_1.isRootNode(node));
  1052. if (!scope) {
  1053. throw new Error('Cannot acquire scope for node');
  1054. }
  1055. this.sanitizeScopes(scope);
  1056. return scope;
  1057. }
  1058. sanitizeScopes(scope) {
  1059. scope.childScopes.forEach((childScope) => {
  1060. if (childScope.type === 'class' && childScope.upper) {
  1061. if (!childScope.variables.length) {
  1062. return;
  1063. }
  1064. const classNameVariable = childScope.variables[0];
  1065. const upperVariable = childScope.upper.variables
  1066. .find((variable) => {
  1067. const isValidClassNameVariable = classNameVariable.defs
  1068. .some((definition) => definition.type === 'ClassName');
  1069. return isValidClassNameVariable && variable.name === classNameVariable.name;
  1070. });
  1071. upperVariable === null || upperVariable === void 0 ? void 0 : upperVariable.references.push(...childScope.variables[0].references);
  1072. }
  1073. });
  1074. for (const childScope of scope.childScopes) {
  1075. this.sanitizeScopes(childScope);
  1076. }
  1077. }
  1078. };
  1079. ScopeAnalyzer.eslintScopeOptions = {
  1080. ecmaVersion: EcmaVersion_1.ecmaVersion,
  1081. optimistic: true
  1082. };
  1083. ScopeAnalyzer.sourceTypes = [
  1084. 'script',
  1085. 'module'
  1086. ];
  1087. ScopeAnalyzer.emptyRangeValue = 0;
  1088. ScopeAnalyzer = ScopeAnalyzer_1 = __decorate([
  1089. inversify_1.injectable()
  1090. ], ScopeAnalyzer);
  1091. exports.ScopeAnalyzer = ScopeAnalyzer;
  1092. /***/ }),
  1093. /***/ "./src/analyzers/string-array-storage-analyzer/StringArrayStorageAnalyzer.ts":
  1094. /*!***********************************************************************************!*\
  1095. !*** ./src/analyzers/string-array-storage-analyzer/StringArrayStorageAnalyzer.ts ***!
  1096. \***********************************************************************************/
  1097. /*! unknown exports (runtime-defined) */
  1098. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  1099. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  1100. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  1101. if (k2 === undefined) k2 = k;
  1102. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  1103. }) : (function(o, m, k, k2) {
  1104. if (k2 === undefined) k2 = k;
  1105. o[k2] = m[k];
  1106. }));
  1107. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  1108. Object.defineProperty(o, "default", { enumerable: true, value: v });
  1109. }) : function(o, v) {
  1110. o["default"] = v;
  1111. });
  1112. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  1113. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  1114. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  1115. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  1116. return c > 3 && r && Object.defineProperty(target, key, r), r;
  1117. };
  1118. var __importStar = (this && this.__importStar) || function (mod) {
  1119. if (mod && mod.__esModule) return mod;
  1120. var result = {};
  1121. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  1122. __setModuleDefault(result, mod);
  1123. return result;
  1124. };
  1125. var __metadata = (this && this.__metadata) || function (k, v) {
  1126. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  1127. };
  1128. var __param = (this && this.__param) || function (paramIndex, decorator) {
  1129. return function (target, key) { decorator(target, key, paramIndex); }
  1130. };
  1131. var StringArrayStorageAnalyzer_1, _a, _b, _c;
  1132. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1133. exports.StringArrayStorageAnalyzer = void 0;
  1134. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1135. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1136. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  1137. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  1138. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  1139. const IStringArrayStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  1140. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  1141. const NodeLiteralUtils_1 = __webpack_require__(/*! ../../node/NodeLiteralUtils */ "./src/node/NodeLiteralUtils.ts");
  1142. const NodeMetadata_1 = __webpack_require__(/*! ../../node/NodeMetadata */ "./src/node/NodeMetadata.ts");
  1143. let StringArrayStorageAnalyzer = StringArrayStorageAnalyzer_1 = class StringArrayStorageAnalyzer {
  1144. constructor(stringArrayStorage, randomGenerator, options) {
  1145. this.stringArrayStorageData = new Map();
  1146. this.stringArrayStorage = stringArrayStorage;
  1147. this.randomGenerator = randomGenerator;
  1148. this.options = options;
  1149. }
  1150. analyze(astTree) {
  1151. if (!this.options.stringArray) {
  1152. return;
  1153. }
  1154. estraverse.traverse(astTree, {
  1155. enter: (node, parentNode) => {
  1156. if (!parentNode) {
  1157. return;
  1158. }
  1159. if (NodeMetadata_1.NodeMetadata.isIgnoredNode(node)) {
  1160. return estraverse.VisitorOption.Skip;
  1161. }
  1162. if (!NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  1163. return;
  1164. }
  1165. this.analyzeLiteralNode(node, parentNode);
  1166. }
  1167. });
  1168. }
  1169. getItemDataForLiteralNode(literalNode) {
  1170. return this.stringArrayStorageData.get(literalNode);
  1171. }
  1172. analyzeLiteralNode(literalNode, parentNode) {
  1173. if (!NodeLiteralUtils_1.NodeLiteralUtils.isStringLiteralNode(literalNode)) {
  1174. return;
  1175. }
  1176. if (NodeLiteralUtils_1.NodeLiteralUtils.isProhibitedLiteralNode(literalNode, parentNode)) {
  1177. return;
  1178. }
  1179. if (!this.shouldAddValueToStringArray(literalNode)) {
  1180. return;
  1181. }
  1182. this.stringArrayStorageData.set(literalNode, this.stringArrayStorage.getOrThrow(literalNode.value));
  1183. }
  1184. shouldAddValueToStringArray(literalNode) {
  1185. const isForceTransformNode = NodeMetadata_1.NodeMetadata.isForceTransformNode(literalNode);
  1186. if (isForceTransformNode) {
  1187. return true;
  1188. }
  1189. return literalNode.value.length >= StringArrayStorageAnalyzer_1.minimumLengthForStringArray
  1190. && this.randomGenerator.getMathRandom() <= this.options.stringArrayThreshold;
  1191. }
  1192. };
  1193. StringArrayStorageAnalyzer.minimumLengthForStringArray = 3;
  1194. StringArrayStorageAnalyzer = StringArrayStorageAnalyzer_1 = __decorate([
  1195. inversify_1.injectable(),
  1196. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)),
  1197. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  1198. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  1199. __metadata("design:paramtypes", [typeof (_a = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  1200. ], StringArrayStorageAnalyzer);
  1201. exports.StringArrayStorageAnalyzer = StringArrayStorageAnalyzer;
  1202. /***/ }),
  1203. /***/ "./src/code-transformers/AbstractCodeTransformer.ts":
  1204. /*!**********************************************************!*\
  1205. !*** ./src/code-transformers/AbstractCodeTransformer.ts ***!
  1206. \**********************************************************/
  1207. /*! unknown exports (runtime-defined) */
  1208. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  1209. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  1210. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  1211. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  1212. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  1213. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  1214. return c > 3 && r && Object.defineProperty(target, key, r), r;
  1215. };
  1216. var __metadata = (this && this.__metadata) || function (k, v) {
  1217. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  1218. };
  1219. var __param = (this && this.__param) || function (paramIndex, decorator) {
  1220. return function (target, key) { decorator(target, key, paramIndex); }
  1221. };
  1222. var _a, _b;
  1223. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1224. exports.AbstractCodeTransformer = void 0;
  1225. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1226. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1227. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  1228. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  1229. let AbstractCodeTransformer = class AbstractCodeTransformer {
  1230. constructor(randomGenerator, options) {
  1231. this.randomGenerator = randomGenerator;
  1232. this.options = options;
  1233. }
  1234. };
  1235. AbstractCodeTransformer = __decorate([
  1236. inversify_1.injectable(),
  1237. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  1238. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  1239. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  1240. ], AbstractCodeTransformer);
  1241. exports.AbstractCodeTransformer = AbstractCodeTransformer;
  1242. /***/ }),
  1243. /***/ "./src/code-transformers/CodeTransformerNamesGroupsBuilder.ts":
  1244. /*!********************************************************************!*\
  1245. !*** ./src/code-transformers/CodeTransformerNamesGroupsBuilder.ts ***!
  1246. \********************************************************************/
  1247. /*! unknown exports (runtime-defined) */
  1248. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  1249. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  1250. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  1251. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  1252. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  1253. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  1254. return c > 3 && r && Object.defineProperty(target, key, r), r;
  1255. };
  1256. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1257. exports.CodeTransformerNamesGroupsBuilder = void 0;
  1258. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1259. const AbstractTransformerNamesGroupsBuilder_1 = __webpack_require__(/*! ../utils/AbstractTransformerNamesGroupsBuilder */ "./src/utils/AbstractTransformerNamesGroupsBuilder.ts");
  1260. let CodeTransformerNamesGroupsBuilder = class CodeTransformerNamesGroupsBuilder extends AbstractTransformerNamesGroupsBuilder_1.AbstractTransformerNamesGroupsBuilder {
  1261. };
  1262. CodeTransformerNamesGroupsBuilder = __decorate([
  1263. inversify_1.injectable()
  1264. ], CodeTransformerNamesGroupsBuilder);
  1265. exports.CodeTransformerNamesGroupsBuilder = CodeTransformerNamesGroupsBuilder;
  1266. /***/ }),
  1267. /***/ "./src/code-transformers/CodeTransformersRunner.ts":
  1268. /*!*********************************************************!*\
  1269. !*** ./src/code-transformers/CodeTransformersRunner.ts ***!
  1270. \*********************************************************/
  1271. /*! unknown exports (runtime-defined) */
  1272. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  1273. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  1274. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  1275. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  1276. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  1277. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  1278. return c > 3 && r && Object.defineProperty(target, key, r), r;
  1279. };
  1280. var __metadata = (this && this.__metadata) || function (k, v) {
  1281. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  1282. };
  1283. var __param = (this && this.__param) || function (paramIndex, decorator) {
  1284. return function (target, key) { decorator(target, key, paramIndex); }
  1285. };
  1286. var _a, _b;
  1287. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1288. exports.CodeTransformersRunner = void 0;
  1289. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1290. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1291. const TCodeTransformerFactory_1 = __webpack_require__(/*! ../types/container/code-transformers/TCodeTransformerFactory */ "./src/types/container/code-transformers/TCodeTransformerFactory.ts");
  1292. const ITransformerNamesGroupsBuilder_1 = __webpack_require__(/*! ../interfaces/utils/ITransformerNamesGroupsBuilder */ "./src/interfaces/utils/ITransformerNamesGroupsBuilder.ts");
  1293. let CodeTransformersRunner = class CodeTransformersRunner {
  1294. constructor(codeTransformerFactory, codeTransformerNamesGroupsBuilder) {
  1295. this.codeTransformerFactory = codeTransformerFactory;
  1296. this.codeTransformerNamesGroupsBuilder = codeTransformerNamesGroupsBuilder;
  1297. }
  1298. transform(code, codeTransformerNames, codeTransformationStage) {
  1299. if (!codeTransformerNames.length) {
  1300. return code;
  1301. }
  1302. const normalizedCodeTransformers = this.buildNormalizedCodeTransformers(codeTransformerNames, codeTransformationStage);
  1303. const codeTransformerNamesGroups = this.codeTransformerNamesGroupsBuilder.build(normalizedCodeTransformers);
  1304. for (const nodeTransformerNamesGroup of codeTransformerNamesGroups) {
  1305. for (const nodeTransformerName of nodeTransformerNamesGroup) {
  1306. const codeTransformer = normalizedCodeTransformers[nodeTransformerName];
  1307. code = codeTransformer.transformCode(code, codeTransformationStage);
  1308. }
  1309. }
  1310. return code;
  1311. }
  1312. buildNormalizedCodeTransformers(codeTransformerNames, codeTransformationStage) {
  1313. return codeTransformerNames
  1314. .reduce((acc, codeTransformerName) => {
  1315. const codeTransformer = this.codeTransformerFactory(codeTransformerName);
  1316. return Object.assign(Object.assign({}, acc), { [codeTransformerName]: codeTransformer });
  1317. }, {});
  1318. }
  1319. };
  1320. CodeTransformersRunner = __decorate([
  1321. inversify_1.injectable(),
  1322. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICodeTransformer)),
  1323. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICodeTransformerNamesGroupsBuilder)),
  1324. __metadata("design:paramtypes", [typeof (_a = typeof TCodeTransformerFactory_1.TCodeTransformerFactory !== "undefined" && TCodeTransformerFactory_1.TCodeTransformerFactory) === "function" ? _a : Object, typeof (_b = typeof ITransformerNamesGroupsBuilder_1.ITransformerNamesGroupsBuilder !== "undefined" && ITransformerNamesGroupsBuilder_1.ITransformerNamesGroupsBuilder) === "function" ? _b : Object])
  1325. ], CodeTransformersRunner);
  1326. exports.CodeTransformersRunner = CodeTransformersRunner;
  1327. /***/ }),
  1328. /***/ "./src/code-transformers/preparing-transformers/HashbangOperatorTransformer.ts":
  1329. /*!*************************************************************************************!*\
  1330. !*** ./src/code-transformers/preparing-transformers/HashbangOperatorTransformer.ts ***!
  1331. \*************************************************************************************/
  1332. /*! unknown exports (runtime-defined) */
  1333. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  1334. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  1335. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  1336. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  1337. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  1338. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  1339. return c > 3 && r && Object.defineProperty(target, key, r), r;
  1340. };
  1341. var __metadata = (this && this.__metadata) || function (k, v) {
  1342. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  1343. };
  1344. var __param = (this && this.__param) || function (paramIndex, decorator) {
  1345. return function (target, key) { decorator(target, key, paramIndex); }
  1346. };
  1347. var _a, _b;
  1348. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1349. exports.HashbangOperatorTransformer = void 0;
  1350. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1351. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1352. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  1353. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  1354. const CodeTransformationStage_1 = __webpack_require__(/*! ../../enums/code-transformers/CodeTransformationStage */ "./src/enums/code-transformers/CodeTransformationStage.ts");
  1355. const AbstractCodeTransformer_1 = __webpack_require__(/*! ../AbstractCodeTransformer */ "./src/code-transformers/AbstractCodeTransformer.ts");
  1356. let HashbangOperatorTransformer = class HashbangOperatorTransformer extends AbstractCodeTransformer_1.AbstractCodeTransformer {
  1357. constructor(randomGenerator, options) {
  1358. super(randomGenerator, options);
  1359. this.hashbangOperatorLine = null;
  1360. }
  1361. transformCode(code, codeTransformationStage) {
  1362. switch (codeTransformationStage) {
  1363. case CodeTransformationStage_1.CodeTransformationStage.PreparingTransformers:
  1364. return this.removeAndSaveHashbangOperatorLine(code);
  1365. case CodeTransformationStage_1.CodeTransformationStage.FinalizingTransformers:
  1366. return this.appendSavedHashbangOperatorLine(code);
  1367. default:
  1368. return code;
  1369. }
  1370. }
  1371. removeAndSaveHashbangOperatorLine(code) {
  1372. return code
  1373. .replace(/^#!.*$(\r?\n)*/m, (substring) => {
  1374. if (substring) {
  1375. this.hashbangOperatorLine = substring;
  1376. }
  1377. return '';
  1378. })
  1379. .trim();
  1380. }
  1381. appendSavedHashbangOperatorLine(code) {
  1382. var _a;
  1383. return `${(_a = this.hashbangOperatorLine) !== null && _a !== void 0 ? _a : ''}${code}`;
  1384. }
  1385. };
  1386. HashbangOperatorTransformer = __decorate([
  1387. inversify_1.injectable(),
  1388. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  1389. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  1390. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  1391. ], HashbangOperatorTransformer);
  1392. exports.HashbangOperatorTransformer = HashbangOperatorTransformer;
  1393. /***/ }),
  1394. /***/ "./src/constants/AlphabetString.ts":
  1395. /*!*****************************************!*\
  1396. !*** ./src/constants/AlphabetString.ts ***!
  1397. \*****************************************/
  1398. /*! flagged exports */
  1399. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1400. /*! export alphabetString [provided] [no usage info] [missing usage info prevents renaming] */
  1401. /*! other exports [not provided] [no usage info] */
  1402. /*! runtime requirements: __webpack_exports__ */
  1403. /***/ ((__unused_webpack_module, exports) => {
  1404. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1405. exports.alphabetString = void 0;
  1406. exports.alphabetString = 'abcdefghijklmnopqrstuvwxyz';
  1407. /***/ }),
  1408. /***/ "./src/constants/AlphabetStringUppercase.ts":
  1409. /*!**************************************************!*\
  1410. !*** ./src/constants/AlphabetStringUppercase.ts ***!
  1411. \**************************************************/
  1412. /*! flagged exports */
  1413. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1414. /*! export alphabetStringUppercase [provided] [no usage info] [missing usage info prevents renaming] */
  1415. /*! other exports [not provided] [no usage info] */
  1416. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  1417. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  1418. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1419. exports.alphabetStringUppercase = void 0;
  1420. const AlphabetString_1 = __webpack_require__(/*! ./AlphabetString */ "./src/constants/AlphabetString.ts");
  1421. exports.alphabetStringUppercase = AlphabetString_1.alphabetString.toUpperCase();
  1422. /***/ }),
  1423. /***/ "./src/constants/Base64Alphabet.ts":
  1424. /*!*****************************************!*\
  1425. !*** ./src/constants/Base64Alphabet.ts ***!
  1426. \*****************************************/
  1427. /*! flagged exports */
  1428. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1429. /*! export base64alphabet [provided] [no usage info] [missing usage info prevents renaming] */
  1430. /*! other exports [not provided] [no usage info] */
  1431. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  1432. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  1433. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1434. exports.base64alphabet = void 0;
  1435. const AlphabetStringUppercase_1 = __webpack_require__(/*! ./AlphabetStringUppercase */ "./src/constants/AlphabetStringUppercase.ts");
  1436. const AlphabetString_1 = __webpack_require__(/*! ./AlphabetString */ "./src/constants/AlphabetString.ts");
  1437. const NumbersString_1 = __webpack_require__(/*! ./NumbersString */ "./src/constants/NumbersString.ts");
  1438. exports.base64alphabet = `${AlphabetStringUppercase_1.alphabetStringUppercase}${AlphabetString_1.alphabetString}${NumbersString_1.numbersString}+/=`;
  1439. /***/ }),
  1440. /***/ "./src/constants/Base64AlphabetSwapped.ts":
  1441. /*!************************************************!*\
  1442. !*** ./src/constants/Base64AlphabetSwapped.ts ***!
  1443. \************************************************/
  1444. /*! flagged exports */
  1445. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1446. /*! export base64alphabetSwapped [provided] [no usage info] [missing usage info prevents renaming] */
  1447. /*! other exports [not provided] [no usage info] */
  1448. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  1449. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  1450. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1451. exports.base64alphabetSwapped = void 0;
  1452. const AlphabetStringUppercase_1 = __webpack_require__(/*! ./AlphabetStringUppercase */ "./src/constants/AlphabetStringUppercase.ts");
  1453. const AlphabetString_1 = __webpack_require__(/*! ./AlphabetString */ "./src/constants/AlphabetString.ts");
  1454. const NumbersString_1 = __webpack_require__(/*! ./NumbersString */ "./src/constants/NumbersString.ts");
  1455. exports.base64alphabetSwapped = `${AlphabetString_1.alphabetString}${AlphabetStringUppercase_1.alphabetStringUppercase}${NumbersString_1.numbersString}+/=`;
  1456. /***/ }),
  1457. /***/ "./src/constants/EcmaVersion.ts":
  1458. /*!**************************************!*\
  1459. !*** ./src/constants/EcmaVersion.ts ***!
  1460. \**************************************/
  1461. /*! flagged exports */
  1462. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1463. /*! export ecmaVersion [provided] [no usage info] [missing usage info prevents renaming] */
  1464. /*! other exports [not provided] [no usage info] */
  1465. /*! runtime requirements: __webpack_exports__ */
  1466. /***/ ((__unused_webpack_module, exports) => {
  1467. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1468. exports.ecmaVersion = void 0;
  1469. exports.ecmaVersion = 12;
  1470. /***/ }),
  1471. /***/ "./src/constants/NumbersString.ts":
  1472. /*!****************************************!*\
  1473. !*** ./src/constants/NumbersString.ts ***!
  1474. \****************************************/
  1475. /*! flagged exports */
  1476. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1477. /*! export numbersString [provided] [no usage info] [missing usage info prevents renaming] */
  1478. /*! other exports [not provided] [no usage info] */
  1479. /*! runtime requirements: __webpack_exports__ */
  1480. /***/ ((__unused_webpack_module, exports) => {
  1481. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1482. exports.numbersString = void 0;
  1483. exports.numbersString = '0123456789';
  1484. /***/ }),
  1485. /***/ "./src/constants/node-transformers/string-array-transformers/StringArrayRootCallsWrapperParametersDefaultCount.ts":
  1486. /*!************************************************************************************************************************!*\
  1487. !*** ./src/constants/node-transformers/string-array-transformers/StringArrayRootCallsWrapperParametersDefaultCount.ts ***!
  1488. \************************************************************************************************************************/
  1489. /*! flagged exports */
  1490. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1491. /*! export stringArrayRootCallsWrapperParametersDefaultCount [provided] [no usage info] [missing usage info prevents renaming] */
  1492. /*! other exports [not provided] [no usage info] */
  1493. /*! runtime requirements: __webpack_exports__ */
  1494. /***/ ((__unused_webpack_module, exports) => {
  1495. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1496. exports.stringArrayRootCallsWrapperParametersDefaultCount = void 0;
  1497. exports.stringArrayRootCallsWrapperParametersDefaultCount = 2;
  1498. /***/ }),
  1499. /***/ "./src/constants/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperParametersMaxCount.ts":
  1500. /*!*********************************************************************************************************************!*\
  1501. !*** ./src/constants/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperParametersMaxCount.ts ***!
  1502. \*********************************************************************************************************************/
  1503. /*! flagged exports */
  1504. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1505. /*! export stringArrayScopeCallsWrapperParametersMaxCount [provided] [no usage info] [missing usage info prevents renaming] */
  1506. /*! other exports [not provided] [no usage info] */
  1507. /*! runtime requirements: __webpack_exports__ */
  1508. /***/ ((__unused_webpack_module, exports) => {
  1509. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1510. exports.stringArrayScopeCallsWrapperParametersMaxCount = void 0;
  1511. exports.stringArrayScopeCallsWrapperParametersMaxCount = 5;
  1512. /***/ }),
  1513. /***/ "./src/container/InversifyContainerFacade.ts":
  1514. /*!***************************************************!*\
  1515. !*** ./src/container/InversifyContainerFacade.ts ***!
  1516. \***************************************************/
  1517. /*! flagged exports */
  1518. /*! export InversifyContainerFacade [provided] [no usage info] [missing usage info prevents renaming] */
  1519. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1520. /*! other exports [not provided] [no usage info] */
  1521. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  1522. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  1523. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1524. exports.InversifyContainerFacade = void 0;
  1525. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1526. const ServiceIdentifiers_1 = __webpack_require__(/*! ./ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1527. const AnalyzersModule_1 = __webpack_require__(/*! ./modules/analyzers/AnalyzersModule */ "./src/container/modules/analyzers/AnalyzersModule.ts");
  1528. const CodeTransformersModule_1 = __webpack_require__(/*! ./modules/code-transformers/CodeTransformersModule */ "./src/container/modules/code-transformers/CodeTransformersModule.ts");
  1529. const ControlFlowTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/ControlFlowTransformersModule */ "./src/container/modules/node-transformers/ControlFlowTransformersModule.ts");
  1530. const ConvertingTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/ConvertingTransformersModule */ "./src/container/modules/node-transformers/ConvertingTransformersModule.ts");
  1531. const CustomCodeHelpersModule_1 = __webpack_require__(/*! ./modules/custom-code-helpers/CustomCodeHelpersModule */ "./src/container/modules/custom-code-helpers/CustomCodeHelpersModule.ts");
  1532. const CustomNodesModule_1 = __webpack_require__(/*! ./modules/custom-nodes/CustomNodesModule */ "./src/container/modules/custom-nodes/CustomNodesModule.ts");
  1533. const DeadCodeInjectionTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/DeadCodeInjectionTransformersModule */ "./src/container/modules/node-transformers/DeadCodeInjectionTransformersModule.ts");
  1534. const FinalizingTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/FinalizingTransformersModule */ "./src/container/modules/node-transformers/FinalizingTransformersModule.ts");
  1535. const GeneratorsModule_1 = __webpack_require__(/*! ./modules/generators/GeneratorsModule */ "./src/container/modules/generators/GeneratorsModule.ts");
  1536. const InitializingTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/InitializingTransformersModule */ "./src/container/modules/node-transformers/InitializingTransformersModule.ts");
  1537. const NodeModule_1 = __webpack_require__(/*! ./modules/node/NodeModule */ "./src/container/modules/node/NodeModule.ts");
  1538. const NodeTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/NodeTransformersModule */ "./src/container/modules/node-transformers/NodeTransformersModule.ts");
  1539. const OptionsModule_1 = __webpack_require__(/*! ./modules/options/OptionsModule */ "./src/container/modules/options/OptionsModule.ts");
  1540. const PreparingTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/PreparingTransformersModule */ "./src/container/modules/node-transformers/PreparingTransformersModule.ts");
  1541. const RenameIdentifiersTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/RenameIdentifiersTransformersModule */ "./src/container/modules/node-transformers/RenameIdentifiersTransformersModule.ts");
  1542. const RenamePropertiesTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/RenamePropertiesTransformersModule */ "./src/container/modules/node-transformers/RenamePropertiesTransformersModule.ts");
  1543. const SimplifyingTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/SimplifyingTransformersModule */ "./src/container/modules/node-transformers/SimplifyingTransformersModule.ts");
  1544. const StoragesModule_1 = __webpack_require__(/*! ./modules/storages/StoragesModule */ "./src/container/modules/storages/StoragesModule.ts");
  1545. const StringArrayTransformersModule_1 = __webpack_require__(/*! ./modules/node-transformers/StringArrayTransformersModule */ "./src/container/modules/node-transformers/StringArrayTransformersModule.ts");
  1546. const UtilsModule_1 = __webpack_require__(/*! ./modules/utils/UtilsModule */ "./src/container/modules/utils/UtilsModule.ts");
  1547. const CodeTransformersRunner_1 = __webpack_require__(/*! ../code-transformers/CodeTransformersRunner */ "./src/code-transformers/CodeTransformersRunner.ts");
  1548. const JavaScriptObfuscator_1 = __webpack_require__(/*! ../JavaScriptObfuscator */ "./src/JavaScriptObfuscator.ts");
  1549. const Logger_1 = __webpack_require__(/*! ../logger/Logger */ "./src/logger/Logger.ts");
  1550. const NodeTransformersRunner_1 = __webpack_require__(/*! ../node-transformers/NodeTransformersRunner */ "./src/node-transformers/NodeTransformersRunner.ts");
  1551. const ObfuscationEventEmitter_1 = __webpack_require__(/*! ../event-emitters/ObfuscationEventEmitter */ "./src/event-emitters/ObfuscationEventEmitter.ts");
  1552. const ObfuscatedCode_1 = __webpack_require__(/*! ../source-code/ObfuscatedCode */ "./src/source-code/ObfuscatedCode.ts");
  1553. const SourceCode_1 = __webpack_require__(/*! ../source-code/SourceCode */ "./src/source-code/SourceCode.ts");
  1554. class InversifyContainerFacade {
  1555. constructor() {
  1556. this.container = new inversify_1.Container();
  1557. }
  1558. static getFactory(serviceIdentifier) {
  1559. return (context) => {
  1560. return (bindingName) => {
  1561. return context.container.getNamed(serviceIdentifier, bindingName);
  1562. };
  1563. };
  1564. }
  1565. static getCacheFactory(serviceIdentifier) {
  1566. return (context) => {
  1567. const cache = new Map();
  1568. return (bindingName) => {
  1569. if (cache.has(bindingName)) {
  1570. return cache.get(bindingName);
  1571. }
  1572. const object = context.container.getNamed(serviceIdentifier, bindingName);
  1573. cache.set(bindingName, object);
  1574. return object;
  1575. };
  1576. };
  1577. }
  1578. static getConstructorFactory(serviceIdentifier, ...dependencies) {
  1579. return (context) => {
  1580. const cache = new Map();
  1581. const cachedDependencies = [];
  1582. return (bindingName) => {
  1583. dependencies.forEach((dependency, index) => {
  1584. if (!cachedDependencies[index]) {
  1585. cachedDependencies[index] = context.container.get(dependency);
  1586. }
  1587. });
  1588. if (cache.has(bindingName)) {
  1589. return new (cache.get(bindingName))(...cachedDependencies);
  1590. }
  1591. const constructor = context.container
  1592. .getNamed(serviceIdentifier, bindingName);
  1593. cache.set(bindingName, constructor);
  1594. return new constructor(...cachedDependencies);
  1595. };
  1596. };
  1597. }
  1598. get(serviceIdentifier) {
  1599. return this.container.get(serviceIdentifier);
  1600. }
  1601. getNamed(serviceIdentifier, named) {
  1602. return this.container.getNamed(serviceIdentifier, named);
  1603. }
  1604. load(sourceCode, sourceMap, options) {
  1605. this.container
  1606. .bind(ServiceIdentifiers_1.ServiceIdentifiers.ISourceCode)
  1607. .toDynamicValue(() => new SourceCode_1.SourceCode(sourceCode, sourceMap))
  1608. .inSingletonScope();
  1609. this.container
  1610. .bind(ServiceIdentifiers_1.ServiceIdentifiers.TInputOptions)
  1611. .toDynamicValue(() => options)
  1612. .inSingletonScope();
  1613. this.container
  1614. .bind(ServiceIdentifiers_1.ServiceIdentifiers.ILogger)
  1615. .to(Logger_1.Logger)
  1616. .inSingletonScope();
  1617. this.container
  1618. .bind(ServiceIdentifiers_1.ServiceIdentifiers.IJavaScriptObfuscator)
  1619. .to(JavaScriptObfuscator_1.JavaScriptObfuscator)
  1620. .inSingletonScope();
  1621. this.container
  1622. .bind(ServiceIdentifiers_1.ServiceIdentifiers.ICodeTransformersRunner)
  1623. .to(CodeTransformersRunner_1.CodeTransformersRunner)
  1624. .inSingletonScope();
  1625. this.container
  1626. .bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformersRunner)
  1627. .to(NodeTransformersRunner_1.NodeTransformersRunner)
  1628. .inSingletonScope();
  1629. this.container
  1630. .bind(ServiceIdentifiers_1.ServiceIdentifiers.IObfuscatedCode)
  1631. .to(ObfuscatedCode_1.ObfuscatedCode);
  1632. this.container
  1633. .bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IObfuscatedCode)
  1634. .toFactory((context) => {
  1635. return (obfuscatedCodeAsString, sourceMapAsString) => {
  1636. const obfuscatedCode = context.container
  1637. .get(ServiceIdentifiers_1.ServiceIdentifiers.IObfuscatedCode);
  1638. obfuscatedCode.initialize(obfuscatedCodeAsString, sourceMapAsString);
  1639. return obfuscatedCode;
  1640. };
  1641. });
  1642. this.container
  1643. .bind(ServiceIdentifiers_1.ServiceIdentifiers.IObfuscationEventEmitter)
  1644. .to(ObfuscationEventEmitter_1.ObfuscationEventEmitter)
  1645. .inSingletonScope();
  1646. this.container.load(AnalyzersModule_1.analyzersModule);
  1647. this.container.load(CodeTransformersModule_1.codeTransformersModule);
  1648. this.container.load(ControlFlowTransformersModule_1.controlFlowTransformersModule);
  1649. this.container.load(ConvertingTransformersModule_1.convertingTransformersModule);
  1650. this.container.load(CustomCodeHelpersModule_1.customCodeHelpersModule);
  1651. this.container.load(CustomNodesModule_1.customNodesModule);
  1652. this.container.load(DeadCodeInjectionTransformersModule_1.deadCodeInjectionTransformersModule);
  1653. this.container.load(FinalizingTransformersModule_1.finalizingTransformersModule);
  1654. this.container.load(GeneratorsModule_1.generatorsModule);
  1655. this.container.load(InitializingTransformersModule_1.initializingTransformersModule);
  1656. this.container.load(NodeModule_1.nodeModule);
  1657. this.container.load(NodeTransformersModule_1.nodeTransformersModule);
  1658. this.container.load(OptionsModule_1.optionsModule);
  1659. this.container.load(PreparingTransformersModule_1.preparingTransformersModule);
  1660. this.container.load(RenameIdentifiersTransformersModule_1.renameIdentifiersTransformersModule);
  1661. this.container.load(RenamePropertiesTransformersModule_1.renamePropertiesTransformersModule);
  1662. this.container.load(SimplifyingTransformersModule_1.simplifyingTransformersModule);
  1663. this.container.load(StoragesModule_1.storagesModule);
  1664. this.container.load(StringArrayTransformersModule_1.stringArrayTransformersModule);
  1665. this.container.load(UtilsModule_1.utilsModule);
  1666. }
  1667. unload() {
  1668. this.container.unbindAll();
  1669. }
  1670. }
  1671. exports.InversifyContainerFacade = InversifyContainerFacade;
  1672. /***/ }),
  1673. /***/ "./src/container/ServiceIdentifiers.ts":
  1674. /*!*********************************************!*\
  1675. !*** ./src/container/ServiceIdentifiers.ts ***!
  1676. \*********************************************/
  1677. /*! flagged exports */
  1678. /*! export ServiceIdentifiers [provided] [no usage info] [missing usage info prevents renaming] */
  1679. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1680. /*! other exports [not provided] [no usage info] */
  1681. /*! runtime requirements: __webpack_exports__ */
  1682. /***/ ((__unused_webpack_module, exports) => {
  1683. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1684. exports.ServiceIdentifiers = void 0;
  1685. var ServiceIdentifiers;
  1686. (function (ServiceIdentifiers) {
  1687. ServiceIdentifiers["Factory__ICalleeDataExtractor"] = "Factory<ICalleeDataExtractor>";
  1688. ServiceIdentifiers["Factory__ICodeTransformer"] = "Factory<ICodeTransformer[]>";
  1689. ServiceIdentifiers["Factory__IControlFlowCustomNode"] = "Factory<IControlFlowCustomNode>";
  1690. ServiceIdentifiers["Factory__IControlFlowReplacer"] = "Factory<IControlFlowReplacer>";
  1691. ServiceIdentifiers["Factory__ICustomCodeHelper"] = "Factory<ICustomCodeHelper>";
  1692. ServiceIdentifiers["Factory__ICustomCodeHelperGroup"] = "Factory<ICustomCodeHelperGroup>";
  1693. ServiceIdentifiers["Factory__IDeadCodeInjectionCustomNode"] = "Factory<IDeadCodeInjectionCustomNode>";
  1694. ServiceIdentifiers["Factory__IIdentifierNamesGenerator"] = "Factory<IIdentifierNamesGenerator>";
  1695. ServiceIdentifiers["Factory__INodeGuard"] = "Factory<INodeGuard>";
  1696. ServiceIdentifiers["Factory__INodeTransformer"] = "Factory<INodeTransformer[]>";
  1697. ServiceIdentifiers["Factory__IObfuscatedCode"] = "Factory<IObfuscatedCode>";
  1698. ServiceIdentifiers["Factory__IObjectExpressionKeysTransformerCustomNode"] = "Factory<IObjectExpressionKeysTransformerCustomNode>";
  1699. ServiceIdentifiers["Factory__IObjectExpressionExtractor"] = "Factory<IObjectExpressionExtractor>";
  1700. ServiceIdentifiers["Factory__IStringArrayCustomNode"] = "Factory<IStringArrayCustomNode>";
  1701. ServiceIdentifiers["Factory__IStringArrayIndexNode"] = "Factory<IStringArrayIndexNode>";
  1702. ServiceIdentifiers["Factory__TControlFlowStorage"] = "Factory<TControlFlowStorage>";
  1703. ServiceIdentifiers["IArrayUtils"] = "IArrayUtils";
  1704. ServiceIdentifiers["ICalleeDataExtractor"] = "ICalleeDataExtractor";
  1705. ServiceIdentifiers["ICallsGraphAnalyzer"] = "ICallsGraphAnalyzer";
  1706. ServiceIdentifiers["ICodeTransformer"] = "ICodeTransformer";
  1707. ServiceIdentifiers["ICodeTransformerNamesGroupsBuilder"] = "ICodeTransformerNamesGroupsBuilder";
  1708. ServiceIdentifiers["ICodeTransformersRunner"] = "ICodeTransformersRunner";
  1709. ServiceIdentifiers["ICryptUtils"] = "ICryptUtils";
  1710. ServiceIdentifiers["ICryptUtilsSwappedAlphabet"] = "ICryptUtilsSwappedAlphabet";
  1711. ServiceIdentifiers["ICustomCodeHelper"] = "ICustomCodeHelper";
  1712. ServiceIdentifiers["ICustomCodeHelperGroup"] = "ICustomCodeHelperGroup";
  1713. ServiceIdentifiers["IControlFlowReplacer"] = "IControlFlowReplacer";
  1714. ServiceIdentifiers["ICustomCodeHelperFormatter"] = "ICustomCodeHelperFormatter";
  1715. ServiceIdentifiers["ICustomCodeHelperObfuscator"] = "ICustomCodeHelperObfuscator";
  1716. ServiceIdentifiers["IEscapeSequenceEncoder"] = "IEscapeSequenceEncoder";
  1717. ServiceIdentifiers["IIdentifierNamesGenerator"] = "IIdentifierNamesGenerator";
  1718. ServiceIdentifiers["IIdentifierReplacer"] = "IIdentifierReplacer";
  1719. ServiceIdentifiers["IJavaScriptObfuscator"] = "IJavaScriptObfuscator";
  1720. ServiceIdentifiers["ILevelledTopologicalSorter"] = "ILevelledTopologicalSorter";
  1721. ServiceIdentifiers["ILiteralNodesCacheStorage"] = "ILiteralNodesCacheStorage";
  1722. ServiceIdentifiers["ILogger"] = "ILogger";
  1723. ServiceIdentifiers["INodeGuard"] = "INodeGuard";
  1724. ServiceIdentifiers["INodeTransformer"] = "INodeTransformer";
  1725. ServiceIdentifiers["INodeTransformerNamesGroupsBuilder"] = "INodeTransformerNamesGroupsBuilder";
  1726. ServiceIdentifiers["INodeTransformersRunner"] = "INodeTransformersRunner";
  1727. ServiceIdentifiers["INumberNumericalExpressionAnalyzer"] = "INumberNumericalExpressionAnalyzer";
  1728. ServiceIdentifiers["IObfuscationEventEmitter"] = "IObfuscationEventEmitter";
  1729. ServiceIdentifiers["IObfuscatedCode"] = "IObfuscatedCode";
  1730. ServiceIdentifiers["IOptions"] = "IOptions";
  1731. ServiceIdentifiers["IOptionsNormalizer"] = "IOptionsNormalizer";
  1732. ServiceIdentifiers["IPrevailingKindOfVariablesAnalyzer"] = "IPrevailingKindOfVariablesAnalyzer";
  1733. ServiceIdentifiers["IObjectExpressionExtractor"] = "IObjectExpressionExtractor";
  1734. ServiceIdentifiers["IRandomGenerator"] = "IRandomGenerator";
  1735. ServiceIdentifiers["IRenamePropertiesReplacer"] = "IRenamePropertiesReplacer";
  1736. ServiceIdentifiers["IScopeIdentifiersTraverser"] = "IScopeIdentifiersTraverser";
  1737. ServiceIdentifiers["ISourceCode"] = "ISourceCode";
  1738. ServiceIdentifiers["IScopeAnalyzer"] = "IScopeAnalyzer";
  1739. ServiceIdentifiers["IStringArrayIndexNode"] = "IStringArrayIndexNode";
  1740. ServiceIdentifiers["IStringArrayScopeCallsWrapperLexicalScopeDataStorage"] = "IStringArrayScopeCallsWrapperLexicalScopeDataStorage";
  1741. ServiceIdentifiers["IStringArrayScopeCallsWrapperNamesDataStorage"] = "IStringArrayScopeCallsWrapperNamesDataStorage";
  1742. ServiceIdentifiers["IStringArrayStorage"] = "IStringArrayStorage";
  1743. ServiceIdentifiers["IStringArrayStorageAnalyzer"] = "IStringArrayStorageAnalyzer";
  1744. ServiceIdentifiers["IVisitedLexicalScopeNodesStackStorage"] = "IVisitedLexicalScopeNodesStackStorage";
  1745. ServiceIdentifiers["Newable__ICustomNode"] = "Newable<ICustomNode>";
  1746. ServiceIdentifiers["Newable__TControlFlowStorage"] = "Newable<TControlFlowStorage>";
  1747. ServiceIdentifiers["TCustomNodeGroupStorage"] = "TCustomNodeGroupStorage";
  1748. ServiceIdentifiers["TInputOptions"] = "TInputOptions";
  1749. })(ServiceIdentifiers = exports.ServiceIdentifiers || (exports.ServiceIdentifiers = {}));
  1750. /***/ }),
  1751. /***/ "./src/container/modules/analyzers/AnalyzersModule.ts":
  1752. /*!************************************************************!*\
  1753. !*** ./src/container/modules/analyzers/AnalyzersModule.ts ***!
  1754. \************************************************************/
  1755. /*! flagged exports */
  1756. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1757. /*! export analyzersModule [provided] [no usage info] [missing usage info prevents renaming] */
  1758. /*! other exports [not provided] [no usage info] */
  1759. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  1760. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  1761. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1762. exports.analyzersModule = void 0;
  1763. const InversifyContainerFacade_1 = __webpack_require__(/*! ../../InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  1764. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1765. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1766. const CalleeDataExtractor_1 = __webpack_require__(/*! ../../../enums/analyzers/calls-graph-analyzer/CalleeDataExtractor */ "./src/enums/analyzers/calls-graph-analyzer/CalleeDataExtractor.ts");
  1767. const CallsGraphAnalyzer_1 = __webpack_require__(/*! ../../../analyzers/calls-graph-analyzer/CallsGraphAnalyzer */ "./src/analyzers/calls-graph-analyzer/CallsGraphAnalyzer.ts");
  1768. const FunctionDeclarationCalleeDataExtractor_1 = __webpack_require__(/*! ../../../analyzers/calls-graph-analyzer/callee-data-extractors/FunctionDeclarationCalleeDataExtractor */ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionDeclarationCalleeDataExtractor.ts");
  1769. const FunctionExpressionCalleeDataExtractor_1 = __webpack_require__(/*! ../../../analyzers/calls-graph-analyzer/callee-data-extractors/FunctionExpressionCalleeDataExtractor */ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionExpressionCalleeDataExtractor.ts");
  1770. const NumberNumericalExpressionAnalyzer_1 = __webpack_require__(/*! ../../../analyzers/number-numerical-expression-analyzer/NumberNumericalExpressionAnalyzer */ "./src/analyzers/number-numerical-expression-analyzer/NumberNumericalExpressionAnalyzer.ts");
  1771. const ObjectExpressionCalleeDataExtractor_1 = __webpack_require__(/*! ../../../analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor */ "./src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts");
  1772. const PrevailingKindOfVariablesAnalyzer_1 = __webpack_require__(/*! ../../../analyzers/prevailing-kind-of-variables-analyzer/PrevailingKindOfVariablesAnalyzer */ "./src/analyzers/prevailing-kind-of-variables-analyzer/PrevailingKindOfVariablesAnalyzer.ts");
  1773. const ScopeAnalyzer_1 = __webpack_require__(/*! ../../../analyzers/scope-analyzer/ScopeAnalyzer */ "./src/analyzers/scope-analyzer/ScopeAnalyzer.ts");
  1774. const StringArrayStorageAnalyzer_1 = __webpack_require__(/*! ../../../analyzers/string-array-storage-analyzer/StringArrayStorageAnalyzer */ "./src/analyzers/string-array-storage-analyzer/StringArrayStorageAnalyzer.ts");
  1775. exports.analyzersModule = new inversify_1.ContainerModule((bind) => {
  1776. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICallsGraphAnalyzer)
  1777. .to(CallsGraphAnalyzer_1.CallsGraphAnalyzer)
  1778. .inSingletonScope();
  1779. bind(ServiceIdentifiers_1.ServiceIdentifiers.INumberNumericalExpressionAnalyzer)
  1780. .to(NumberNumericalExpressionAnalyzer_1.NumberNumericalExpressionAnalyzer)
  1781. .inSingletonScope();
  1782. bind(ServiceIdentifiers_1.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)
  1783. .to(PrevailingKindOfVariablesAnalyzer_1.PrevailingKindOfVariablesAnalyzer)
  1784. .inSingletonScope();
  1785. bind(ServiceIdentifiers_1.ServiceIdentifiers.IScopeAnalyzer)
  1786. .to(ScopeAnalyzer_1.ScopeAnalyzer)
  1787. .inSingletonScope();
  1788. bind(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorageAnalyzer)
  1789. .to(StringArrayStorageAnalyzer_1.StringArrayStorageAnalyzer)
  1790. .inSingletonScope();
  1791. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICalleeDataExtractor)
  1792. .to(FunctionDeclarationCalleeDataExtractor_1.FunctionDeclarationCalleeDataExtractor)
  1793. .whenTargetNamed(CalleeDataExtractor_1.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor);
  1794. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICalleeDataExtractor)
  1795. .to(FunctionExpressionCalleeDataExtractor_1.FunctionExpressionCalleeDataExtractor)
  1796. .whenTargetNamed(CalleeDataExtractor_1.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor);
  1797. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICalleeDataExtractor)
  1798. .to(ObjectExpressionCalleeDataExtractor_1.ObjectExpressionCalleeDataExtractor)
  1799. .whenTargetNamed(CalleeDataExtractor_1.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor);
  1800. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICalleeDataExtractor)
  1801. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  1802. .getCacheFactory(ServiceIdentifiers_1.ServiceIdentifiers.ICalleeDataExtractor));
  1803. });
  1804. /***/ }),
  1805. /***/ "./src/container/modules/code-transformers/CodeTransformersModule.ts":
  1806. /*!***************************************************************************!*\
  1807. !*** ./src/container/modules/code-transformers/CodeTransformersModule.ts ***!
  1808. \***************************************************************************/
  1809. /*! flagged exports */
  1810. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1811. /*! export codeTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  1812. /*! other exports [not provided] [no usage info] */
  1813. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  1814. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  1815. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1816. exports.codeTransformersModule = void 0;
  1817. const InversifyContainerFacade_1 = __webpack_require__(/*! ../../InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  1818. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1819. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1820. const CodeTransformer_1 = __webpack_require__(/*! ../../../enums/code-transformers/CodeTransformer */ "./src/enums/code-transformers/CodeTransformer.ts");
  1821. const CodeTransformerNamesGroupsBuilder_1 = __webpack_require__(/*! ../../../code-transformers/CodeTransformerNamesGroupsBuilder */ "./src/code-transformers/CodeTransformerNamesGroupsBuilder.ts");
  1822. const HashbangOperatorTransformer_1 = __webpack_require__(/*! ../../../code-transformers/preparing-transformers/HashbangOperatorTransformer */ "./src/code-transformers/preparing-transformers/HashbangOperatorTransformer.ts");
  1823. exports.codeTransformersModule = new inversify_1.ContainerModule((bind) => {
  1824. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICodeTransformer)
  1825. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  1826. .getCacheFactory(ServiceIdentifiers_1.ServiceIdentifiers.ICodeTransformer));
  1827. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICodeTransformerNamesGroupsBuilder)
  1828. .to(CodeTransformerNamesGroupsBuilder_1.CodeTransformerNamesGroupsBuilder)
  1829. .inSingletonScope();
  1830. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICodeTransformer)
  1831. .to(HashbangOperatorTransformer_1.HashbangOperatorTransformer)
  1832. .whenTargetNamed(CodeTransformer_1.CodeTransformer.HashbangOperatorTransformer);
  1833. });
  1834. /***/ }),
  1835. /***/ "./src/container/modules/custom-code-helpers/CustomCodeHelpersModule.ts":
  1836. /*!******************************************************************************!*\
  1837. !*** ./src/container/modules/custom-code-helpers/CustomCodeHelpersModule.ts ***!
  1838. \******************************************************************************/
  1839. /*! flagged exports */
  1840. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1841. /*! export customCodeHelpersModule [provided] [no usage info] [missing usage info prevents renaming] */
  1842. /*! other exports [not provided] [no usage info] */
  1843. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  1844. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  1845. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1846. exports.customCodeHelpersModule = void 0;
  1847. const InversifyContainerFacade_1 = __webpack_require__(/*! ../../InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  1848. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1849. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1850. const CustomCodeHelper_1 = __webpack_require__(/*! ../../../enums/custom-code-helpers/CustomCodeHelper */ "./src/enums/custom-code-helpers/CustomCodeHelper.ts");
  1851. const CustomCodeHelperGroup_1 = __webpack_require__(/*! ../../../enums/custom-code-helpers/CustomCodeHelperGroup */ "./src/enums/custom-code-helpers/CustomCodeHelperGroup.ts");
  1852. const ConsoleOutputCodeHelperGroup_1 = __webpack_require__(/*! ../../../custom-code-helpers/console-output/group/ConsoleOutputCodeHelperGroup */ "./src/custom-code-helpers/console-output/group/ConsoleOutputCodeHelperGroup.ts");
  1853. const DebugProtectionCodeHelperGroup_1 = __webpack_require__(/*! ../../../custom-code-helpers/debug-protection/group/DebugProtectionCodeHelperGroup */ "./src/custom-code-helpers/debug-protection/group/DebugProtectionCodeHelperGroup.ts");
  1854. const DomainLockCustomCodeHelperGroup_1 = __webpack_require__(/*! ../../../custom-code-helpers/domain-lock/group/DomainLockCustomCodeHelperGroup */ "./src/custom-code-helpers/domain-lock/group/DomainLockCustomCodeHelperGroup.ts");
  1855. const SelfDefendingCodeHelperGroup_1 = __webpack_require__(/*! ../../../custom-code-helpers/self-defending/group/SelfDefendingCodeHelperGroup */ "./src/custom-code-helpers/self-defending/group/SelfDefendingCodeHelperGroup.ts");
  1856. const StringArrayCodeHelperGroup_1 = __webpack_require__(/*! ../../../custom-code-helpers/string-array/group/StringArrayCodeHelperGroup */ "./src/custom-code-helpers/string-array/group/StringArrayCodeHelperGroup.ts");
  1857. const ConsoleOutputDisableCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/console-output/ConsoleOutputDisableCodeHelper */ "./src/custom-code-helpers/console-output/ConsoleOutputDisableCodeHelper.ts");
  1858. const CustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../../custom-code-helpers/CustomCodeHelperFormatter */ "./src/custom-code-helpers/CustomCodeHelperFormatter.ts");
  1859. const CustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../../custom-code-helpers/CustomCodeHelperObfuscator */ "./src/custom-code-helpers/CustomCodeHelperObfuscator.ts");
  1860. const DebugProtectionFunctionCallCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/debug-protection/DebugProtectionFunctionCallCodeHelper */ "./src/custom-code-helpers/debug-protection/DebugProtectionFunctionCallCodeHelper.ts");
  1861. const DebugProtectionFunctionIntervalCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/debug-protection/DebugProtectionFunctionIntervalCodeHelper */ "./src/custom-code-helpers/debug-protection/DebugProtectionFunctionIntervalCodeHelper.ts");
  1862. const DebugProtectionFunctionCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/debug-protection/DebugProtectionFunctionCodeHelper */ "./src/custom-code-helpers/debug-protection/DebugProtectionFunctionCodeHelper.ts");
  1863. const DomainLockCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/domain-lock/DomainLockCodeHelper */ "./src/custom-code-helpers/domain-lock/DomainLockCodeHelper.ts");
  1864. const CallsControllerFunctionCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/calls-controller/CallsControllerFunctionCodeHelper */ "./src/custom-code-helpers/calls-controller/CallsControllerFunctionCodeHelper.ts");
  1865. const SelfDefendingUnicodeCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/self-defending/SelfDefendingUnicodeCodeHelper */ "./src/custom-code-helpers/self-defending/SelfDefendingUnicodeCodeHelper.ts");
  1866. const StringArrayCallsWrapperCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/string-array/StringArrayCallsWrapperCodeHelper */ "./src/custom-code-helpers/string-array/StringArrayCallsWrapperCodeHelper.ts");
  1867. const StringArrayCallsWrapperBase64CodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/string-array/StringArrayCallsWrapperBase64CodeHelper */ "./src/custom-code-helpers/string-array/StringArrayCallsWrapperBase64CodeHelper.ts");
  1868. const StringArrayCallsWrapperRc4CodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/string-array/StringArrayCallsWrapperRc4CodeHelper */ "./src/custom-code-helpers/string-array/StringArrayCallsWrapperRc4CodeHelper.ts");
  1869. const StringArrayCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/string-array/StringArrayCodeHelper */ "./src/custom-code-helpers/string-array/StringArrayCodeHelper.ts");
  1870. const StringArrayRotateFunctionCodeHelper_1 = __webpack_require__(/*! ../../../custom-code-helpers/string-array/StringArrayRotateFunctionCodeHelper */ "./src/custom-code-helpers/string-array/StringArrayRotateFunctionCodeHelper.ts");
  1871. exports.customCodeHelpersModule = new inversify_1.ContainerModule((bind) => {
  1872. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1873. .to(ConsoleOutputDisableCodeHelper_1.ConsoleOutputDisableCodeHelper)
  1874. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.ConsoleOutputDisable);
  1875. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1876. .to(DebugProtectionFunctionCallCodeHelper_1.DebugProtectionFunctionCallCodeHelper)
  1877. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunctionCall);
  1878. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1879. .to(DebugProtectionFunctionIntervalCodeHelper_1.DebugProtectionFunctionIntervalCodeHelper)
  1880. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunctionInterval);
  1881. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1882. .to(DebugProtectionFunctionCodeHelper_1.DebugProtectionFunctionCodeHelper)
  1883. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunction);
  1884. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1885. .to(DomainLockCodeHelper_1.DomainLockCodeHelper)
  1886. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.DomainLock);
  1887. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1888. .to(CallsControllerFunctionCodeHelper_1.CallsControllerFunctionCodeHelper)
  1889. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction);
  1890. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1891. .to(SelfDefendingUnicodeCodeHelper_1.SelfDefendingUnicodeCodeHelper)
  1892. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.SelfDefendingUnicode);
  1893. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1894. .to(StringArrayCallsWrapperCodeHelper_1.StringArrayCallsWrapperCodeHelper)
  1895. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.StringArrayCallsWrapper);
  1896. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1897. .to(StringArrayCallsWrapperBase64CodeHelper_1.StringArrayCallsWrapperBase64CodeHelper)
  1898. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.StringArrayCallsWrapperBase64);
  1899. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1900. .to(StringArrayCallsWrapperRc4CodeHelper_1.StringArrayCallsWrapperRc4CodeHelper)
  1901. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.StringArrayCallsWrapperRc4);
  1902. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1903. .to(StringArrayCodeHelper_1.StringArrayCodeHelper)
  1904. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.StringArray);
  1905. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper)
  1906. .to(StringArrayRotateFunctionCodeHelper_1.StringArrayRotateFunctionCodeHelper)
  1907. .whenTargetNamed(CustomCodeHelper_1.CustomCodeHelper.StringArrayRotateFunction);
  1908. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperGroup)
  1909. .to(ConsoleOutputCodeHelperGroup_1.ConsoleOutputCodeHelperGroup)
  1910. .whenTargetNamed(CustomCodeHelperGroup_1.CustomCodeHelperGroup.ConsoleOutput);
  1911. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperGroup)
  1912. .to(DebugProtectionCodeHelperGroup_1.DebugProtectionCodeHelperGroup)
  1913. .whenTargetNamed(CustomCodeHelperGroup_1.CustomCodeHelperGroup.DebugProtection);
  1914. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperGroup)
  1915. .to(DomainLockCustomCodeHelperGroup_1.DomainLockCustomCodeHelperGroup)
  1916. .whenTargetNamed(CustomCodeHelperGroup_1.CustomCodeHelperGroup.DomainLock);
  1917. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperGroup)
  1918. .to(SelfDefendingCodeHelperGroup_1.SelfDefendingCodeHelperGroup)
  1919. .whenTargetNamed(CustomCodeHelperGroup_1.CustomCodeHelperGroup.SelfDefending);
  1920. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperGroup)
  1921. .to(StringArrayCodeHelperGroup_1.StringArrayCodeHelperGroup)
  1922. .whenTargetNamed(CustomCodeHelperGroup_1.CustomCodeHelperGroup.StringArray);
  1923. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICustomCodeHelper)
  1924. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  1925. .getFactory(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelper));
  1926. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICustomCodeHelperGroup)
  1927. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  1928. .getFactory(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperGroup));
  1929. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)
  1930. .to(CustomCodeHelperFormatter_1.CustomCodeHelperFormatter)
  1931. .inSingletonScope();
  1932. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)
  1933. .to(CustomCodeHelperObfuscator_1.CustomCodeHelperObfuscator)
  1934. .inSingletonScope();
  1935. });
  1936. /***/ }),
  1937. /***/ "./src/container/modules/custom-nodes/CustomNodesModule.ts":
  1938. /*!*****************************************************************!*\
  1939. !*** ./src/container/modules/custom-nodes/CustomNodesModule.ts ***!
  1940. \*****************************************************************/
  1941. /*! flagged exports */
  1942. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  1943. /*! export customNodesModule [provided] [no usage info] [missing usage info prevents renaming] */
  1944. /*! other exports [not provided] [no usage info] */
  1945. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  1946. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  1947. Object.defineProperty(exports, "__esModule", ({ value: true }));
  1948. exports.customNodesModule = void 0;
  1949. const InversifyContainerFacade_1 = __webpack_require__(/*! ../../InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  1950. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  1951. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  1952. const ControlFlowCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/ControlFlowCustomNode */ "./src/enums/custom-nodes/ControlFlowCustomNode.ts");
  1953. const DeadCodeInjectionCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/DeadCodeInjectionCustomNode */ "./src/enums/custom-nodes/DeadCodeInjectionCustomNode.ts");
  1954. const ObjectExpressionKeysTransformerCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/ObjectExpressionKeysTransformerCustomNode */ "./src/enums/custom-nodes/ObjectExpressionKeysTransformerCustomNode.ts");
  1955. const StringArrayCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/StringArrayCustomNode */ "./src/enums/custom-nodes/StringArrayCustomNode.ts");
  1956. const BinaryExpressionFunctionNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/BinaryExpressionFunctionNode */ "./src/custom-nodes/control-flow-flattening-nodes/BinaryExpressionFunctionNode.ts");
  1957. const BlockStatementControlFlowFlatteningNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/BlockStatementControlFlowFlatteningNode */ "./src/custom-nodes/control-flow-flattening-nodes/BlockStatementControlFlowFlatteningNode.ts");
  1958. const BlockStatementDeadCodeInjectionNode_1 = __webpack_require__(/*! ../../../custom-nodes/dead-code-injection-nodes/BlockStatementDeadCodeInjectionNode */ "./src/custom-nodes/dead-code-injection-nodes/BlockStatementDeadCodeInjectionNode.ts");
  1959. const CallExpressionControlFlowStorageCallNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/CallExpressionControlFlowStorageCallNode */ "./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/CallExpressionControlFlowStorageCallNode.ts");
  1960. const CallExpressionFunctionNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/CallExpressionFunctionNode */ "./src/custom-nodes/control-flow-flattening-nodes/CallExpressionFunctionNode.ts");
  1961. const ControlFlowStorageNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ControlFlowStorageNode */ "./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ControlFlowStorageNode.ts");
  1962. const ExpressionWithOperatorControlFlowStorageCallNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ExpressionWithOperatorControlFlowStorageCallNode */ "./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ExpressionWithOperatorControlFlowStorageCallNode.ts");
  1963. const LogicalExpressionFunctionNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/LogicalExpressionFunctionNode */ "./src/custom-nodes/control-flow-flattening-nodes/LogicalExpressionFunctionNode.ts");
  1964. const ObjectExpressionVariableDeclarationHostNode_1 = __webpack_require__(/*! ../../../custom-nodes/object-expression-keys-transformer-nodes/ObjectExpressionVariableDeclarationHostNode */ "./src/custom-nodes/object-expression-keys-transformer-nodes/ObjectExpressionVariableDeclarationHostNode.ts");
  1965. const StringArrayCallNode_1 = __webpack_require__(/*! ../../../custom-nodes/string-array-nodes/StringArrayCallNode */ "./src/custom-nodes/string-array-nodes/StringArrayCallNode.ts");
  1966. const StringArrayHexadecimalNumberIndexNode_1 = __webpack_require__(/*! ../../../custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumberIndexNode */ "./src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumberIndexNode.ts");
  1967. const StringArrayHexadecimalNumericStringIndexNode_1 = __webpack_require__(/*! ../../../custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumericStringIndexNode */ "./src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumericStringIndexNode.ts");
  1968. const StringArrayIndexNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/string-array-index-nodes/StringArrayIndexNode */ "./src/enums/custom-nodes/string-array-index-nodes/StringArrayIndexNode.ts");
  1969. const StringArrayScopeCallsWrapperFunctionNode_1 = __webpack_require__(/*! ../../../custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperFunctionNode */ "./src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperFunctionNode.ts");
  1970. const StringArrayScopeCallsWrapperVariableNode_1 = __webpack_require__(/*! ../../../custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperVariableNode */ "./src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperVariableNode.ts");
  1971. const StringLiteralControlFlowStorageCallNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/StringLiteralControlFlowStorageCallNode */ "./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/StringLiteralControlFlowStorageCallNode.ts");
  1972. const StringLiteralNode_1 = __webpack_require__(/*! ../../../custom-nodes/control-flow-flattening-nodes/StringLiteralNode */ "./src/custom-nodes/control-flow-flattening-nodes/StringLiteralNode.ts");
  1973. exports.customNodesModule = new inversify_1.ContainerModule((bind) => {
  1974. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1975. .toConstructor(BinaryExpressionFunctionNode_1.BinaryExpressionFunctionNode)
  1976. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.BinaryExpressionFunctionNode);
  1977. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1978. .toConstructor(BlockStatementControlFlowFlatteningNode_1.BlockStatementControlFlowFlatteningNode)
  1979. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);
  1980. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1981. .toConstructor(CallExpressionControlFlowStorageCallNode_1.CallExpressionControlFlowStorageCallNode)
  1982. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);
  1983. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1984. .toConstructor(CallExpressionFunctionNode_1.CallExpressionFunctionNode)
  1985. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.CallExpressionFunctionNode);
  1986. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1987. .toConstructor(ControlFlowStorageNode_1.ControlFlowStorageNode)
  1988. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.ControlFlowStorageNode);
  1989. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1990. .toConstructor(ExpressionWithOperatorControlFlowStorageCallNode_1.ExpressionWithOperatorControlFlowStorageCallNode)
  1991. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);
  1992. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1993. .toConstructor(LogicalExpressionFunctionNode_1.LogicalExpressionFunctionNode)
  1994. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.LogicalExpressionFunctionNode);
  1995. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1996. .toConstructor(StringLiteralNode_1.StringLiteralNode)
  1997. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.StringLiteralNode);
  1998. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  1999. .toConstructor(StringLiteralControlFlowStorageCallNode_1.StringLiteralControlFlowStorageCallNode)
  2000. .whenTargetNamed(ControlFlowCustomNode_1.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);
  2001. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  2002. .toConstructor(BlockStatementDeadCodeInjectionNode_1.BlockStatementDeadCodeInjectionNode)
  2003. .whenTargetNamed(DeadCodeInjectionCustomNode_1.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);
  2004. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  2005. .toConstructor(ObjectExpressionVariableDeclarationHostNode_1.ObjectExpressionVariableDeclarationHostNode)
  2006. .whenTargetNamed(ObjectExpressionKeysTransformerCustomNode_1.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode);
  2007. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  2008. .toConstructor(StringArrayCallNode_1.StringArrayCallNode)
  2009. .whenTargetNamed(StringArrayCustomNode_1.StringArrayCustomNode.StringArrayCallNode);
  2010. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  2011. .toConstructor(StringArrayScopeCallsWrapperFunctionNode_1.StringArrayScopeCallsWrapperFunctionNode)
  2012. .whenTargetNamed(StringArrayCustomNode_1.StringArrayCustomNode.StringArrayScopeCallsWrapperFunctionNode);
  2013. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode)
  2014. .toConstructor(StringArrayScopeCallsWrapperVariableNode_1.StringArrayScopeCallsWrapperVariableNode)
  2015. .whenTargetNamed(StringArrayCustomNode_1.StringArrayCustomNode.StringArrayScopeCallsWrapperVariableNode);
  2016. bind(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayIndexNode)
  2017. .to(StringArrayHexadecimalNumberIndexNode_1.StringArrayHexadecimalNumberIndexNode)
  2018. .inSingletonScope()
  2019. .whenTargetNamed(StringArrayIndexNode_1.StringArrayIndexNode.StringArrayHexadecimalNumberIndexNode);
  2020. bind(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayIndexNode)
  2021. .to(StringArrayHexadecimalNumericStringIndexNode_1.StringArrayHexadecimalNumericStringIndexNode)
  2022. .inSingletonScope()
  2023. .whenTargetNamed(StringArrayIndexNode_1.StringArrayIndexNode.StringArrayHexadecimalNumericStringIndexNode);
  2024. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)
  2025. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2026. .getConstructorFactory(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode, ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator, ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter, ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator, ServiceIdentifiers_1.ServiceIdentifiers.IOptions));
  2027. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)
  2028. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2029. .getConstructorFactory(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode, ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator, ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter, ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator, ServiceIdentifiers_1.ServiceIdentifiers.IOptions));
  2030. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode)
  2031. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2032. .getConstructorFactory(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode, ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator, ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter, ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator, ServiceIdentifiers_1.ServiceIdentifiers.IOptions));
  2033. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayCustomNode)
  2034. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2035. .getConstructorFactory(ServiceIdentifiers_1.ServiceIdentifiers.Newable__ICustomNode, ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator, ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayIndexNode, ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter, ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage, ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils, ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator, ServiceIdentifiers_1.ServiceIdentifiers.IOptions));
  2036. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayIndexNode)
  2037. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2038. .getCacheFactory(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayIndexNode));
  2039. });
  2040. /***/ }),
  2041. /***/ "./src/container/modules/generators/GeneratorsModule.ts":
  2042. /*!**************************************************************!*\
  2043. !*** ./src/container/modules/generators/GeneratorsModule.ts ***!
  2044. \**************************************************************/
  2045. /*! flagged exports */
  2046. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2047. /*! export generatorsModule [provided] [no usage info] [missing usage info prevents renaming] */
  2048. /*! other exports [not provided] [no usage info] */
  2049. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2050. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2051. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2052. exports.generatorsModule = void 0;
  2053. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2054. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2055. const IdentifierNamesGenerator_1 = __webpack_require__(/*! ../../../enums/generators/identifier-names-generators/IdentifierNamesGenerator */ "./src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts");
  2056. const DictionaryIdentifierNamesGenerator_1 = __webpack_require__(/*! ../../../generators/identifier-names-generators/DictionaryIdentifierNamesGenerator */ "./src/generators/identifier-names-generators/DictionaryIdentifierNamesGenerator.ts");
  2057. const HexadecimalIdentifierNamesGenerator_1 = __webpack_require__(/*! ../../../generators/identifier-names-generators/HexadecimalIdentifierNamesGenerator */ "./src/generators/identifier-names-generators/HexadecimalIdentifierNamesGenerator.ts");
  2058. const MangledIdentifierNamesGenerator_1 = __webpack_require__(/*! ../../../generators/identifier-names-generators/MangledIdentifierNamesGenerator */ "./src/generators/identifier-names-generators/MangledIdentifierNamesGenerator.ts");
  2059. const MangledShuffledIdentifierNamesGenerator_1 = __webpack_require__(/*! ../../../generators/identifier-names-generators/MangledShuffledIdentifierNamesGenerator */ "./src/generators/identifier-names-generators/MangledShuffledIdentifierNamesGenerator.ts");
  2060. exports.generatorsModule = new inversify_1.ContainerModule((bind) => {
  2061. bind(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierNamesGenerator)
  2062. .to(DictionaryIdentifierNamesGenerator_1.DictionaryIdentifierNamesGenerator)
  2063. .inSingletonScope()
  2064. .whenTargetNamed(IdentifierNamesGenerator_1.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);
  2065. bind(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierNamesGenerator)
  2066. .to(HexadecimalIdentifierNamesGenerator_1.HexadecimalIdentifierNamesGenerator)
  2067. .inSingletonScope()
  2068. .whenTargetNamed(IdentifierNamesGenerator_1.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator);
  2069. bind(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierNamesGenerator)
  2070. .to(MangledIdentifierNamesGenerator_1.MangledIdentifierNamesGenerator)
  2071. .inSingletonScope()
  2072. .whenTargetNamed(IdentifierNamesGenerator_1.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);
  2073. bind(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierNamesGenerator)
  2074. .to(MangledShuffledIdentifierNamesGenerator_1.MangledShuffledIdentifierNamesGenerator)
  2075. .inSingletonScope()
  2076. .whenTargetNamed(IdentifierNamesGenerator_1.IdentifierNamesGenerator.MangledShuffledIdentifierNamesGenerator);
  2077. function identifierNameGeneratorFactory() {
  2078. let cachedIdentifierNamesGenerator = null;
  2079. return (context) => (options) => {
  2080. if (cachedIdentifierNamesGenerator) {
  2081. return cachedIdentifierNamesGenerator;
  2082. }
  2083. let identifierNamesGenerator;
  2084. switch (options.identifierNamesGenerator) {
  2085. case IdentifierNamesGenerator_1.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:
  2086. identifierNamesGenerator = context.container.getNamed(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierNamesGenerator, IdentifierNamesGenerator_1.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);
  2087. break;
  2088. case IdentifierNamesGenerator_1.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:
  2089. identifierNamesGenerator = context.container.getNamed(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierNamesGenerator, IdentifierNamesGenerator_1.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);
  2090. break;
  2091. case IdentifierNamesGenerator_1.IdentifierNamesGenerator.MangledShuffledIdentifierNamesGenerator:
  2092. identifierNamesGenerator = context.container.getNamed(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierNamesGenerator, IdentifierNamesGenerator_1.IdentifierNamesGenerator.MangledShuffledIdentifierNamesGenerator);
  2093. break;
  2094. case IdentifierNamesGenerator_1.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:
  2095. default:
  2096. identifierNamesGenerator = context.container.getNamed(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierNamesGenerator, IdentifierNamesGenerator_1.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator);
  2097. }
  2098. cachedIdentifierNamesGenerator = identifierNamesGenerator;
  2099. return identifierNamesGenerator;
  2100. };
  2101. }
  2102. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)
  2103. .toFactory(identifierNameGeneratorFactory());
  2104. });
  2105. /***/ }),
  2106. /***/ "./src/container/modules/node-transformers/ControlFlowTransformersModule.ts":
  2107. /*!**********************************************************************************!*\
  2108. !*** ./src/container/modules/node-transformers/ControlFlowTransformersModule.ts ***!
  2109. \**********************************************************************************/
  2110. /*! flagged exports */
  2111. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2112. /*! export controlFlowTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2113. /*! other exports [not provided] [no usage info] */
  2114. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2115. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2116. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2117. exports.controlFlowTransformersModule = void 0;
  2118. const InversifyContainerFacade_1 = __webpack_require__(/*! ../../InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  2119. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2120. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2121. const ControlFlowReplacer_1 = __webpack_require__(/*! ../../../enums/node-transformers/control-flow-transformers/control-flow-replacers/ControlFlowReplacer */ "./src/enums/node-transformers/control-flow-transformers/control-flow-replacers/ControlFlowReplacer.ts");
  2122. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2123. const BinaryExpressionControlFlowReplacer_1 = __webpack_require__(/*! ../../../node-transformers/control-flow-transformers/control-flow-replacers/BinaryExpressionControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/BinaryExpressionControlFlowReplacer.ts");
  2124. const BlockStatementControlFlowTransformer_1 = __webpack_require__(/*! ../../../node-transformers/control-flow-transformers/BlockStatementControlFlowTransformer */ "./src/node-transformers/control-flow-transformers/BlockStatementControlFlowTransformer.ts");
  2125. const CallExpressionControlFlowReplacer_1 = __webpack_require__(/*! ../../../node-transformers/control-flow-transformers/control-flow-replacers/CallExpressionControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/CallExpressionControlFlowReplacer.ts");
  2126. const FunctionControlFlowTransformer_1 = __webpack_require__(/*! ../../../node-transformers/control-flow-transformers/FunctionControlFlowTransformer */ "./src/node-transformers/control-flow-transformers/FunctionControlFlowTransformer.ts");
  2127. const LogicalExpressionControlFlowReplacer_1 = __webpack_require__(/*! ../../../node-transformers/control-flow-transformers/control-flow-replacers/LogicalExpressionControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/LogicalExpressionControlFlowReplacer.ts");
  2128. const StringLiteralControlFlowReplacer_1 = __webpack_require__(/*! ../../../node-transformers/control-flow-transformers/control-flow-replacers/StringLiteralControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/StringLiteralControlFlowReplacer.ts");
  2129. exports.controlFlowTransformersModule = new inversify_1.ContainerModule((bind) => {
  2130. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2131. .to(BlockStatementControlFlowTransformer_1.BlockStatementControlFlowTransformer)
  2132. .whenTargetNamed(NodeTransformer_1.NodeTransformer.BlockStatementControlFlowTransformer);
  2133. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2134. .to(FunctionControlFlowTransformer_1.FunctionControlFlowTransformer)
  2135. .whenTargetNamed(NodeTransformer_1.NodeTransformer.FunctionControlFlowTransformer);
  2136. bind(ServiceIdentifiers_1.ServiceIdentifiers.IControlFlowReplacer)
  2137. .to(BinaryExpressionControlFlowReplacer_1.BinaryExpressionControlFlowReplacer)
  2138. .whenTargetNamed(ControlFlowReplacer_1.ControlFlowReplacer.BinaryExpressionControlFlowReplacer);
  2139. bind(ServiceIdentifiers_1.ServiceIdentifiers.IControlFlowReplacer)
  2140. .to(CallExpressionControlFlowReplacer_1.CallExpressionControlFlowReplacer)
  2141. .whenTargetNamed(ControlFlowReplacer_1.ControlFlowReplacer.CallExpressionControlFlowReplacer);
  2142. bind(ServiceIdentifiers_1.ServiceIdentifiers.IControlFlowReplacer)
  2143. .to(LogicalExpressionControlFlowReplacer_1.LogicalExpressionControlFlowReplacer)
  2144. .whenTargetNamed(ControlFlowReplacer_1.ControlFlowReplacer.LogicalExpressionControlFlowReplacer);
  2145. bind(ServiceIdentifiers_1.ServiceIdentifiers.IControlFlowReplacer)
  2146. .to(StringLiteralControlFlowReplacer_1.StringLiteralControlFlowReplacer)
  2147. .whenTargetNamed(ControlFlowReplacer_1.ControlFlowReplacer.StringLiteralControlFlowReplacer);
  2148. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowReplacer)
  2149. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2150. .getCacheFactory(ServiceIdentifiers_1.ServiceIdentifiers.IControlFlowReplacer));
  2151. });
  2152. /***/ }),
  2153. /***/ "./src/container/modules/node-transformers/ConvertingTransformersModule.ts":
  2154. /*!*********************************************************************************!*\
  2155. !*** ./src/container/modules/node-transformers/ConvertingTransformersModule.ts ***!
  2156. \*********************************************************************************/
  2157. /*! flagged exports */
  2158. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2159. /*! export convertingTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2160. /*! other exports [not provided] [no usage info] */
  2161. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2162. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2163. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2164. exports.convertingTransformersModule = void 0;
  2165. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2166. const InversifyContainerFacade_1 = __webpack_require__(/*! ../../InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  2167. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2168. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2169. const ObjectExpressionExtractor_1 = __webpack_require__(/*! ../../../enums/node-transformers/converting-transformers/properties-extractors/ObjectExpressionExtractor */ "./src/enums/node-transformers/converting-transformers/properties-extractors/ObjectExpressionExtractor.ts");
  2170. const BasePropertiesExtractor_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/object-expression-extractors/BasePropertiesExtractor */ "./src/node-transformers/converting-transformers/object-expression-extractors/BasePropertiesExtractor.ts");
  2171. const BooleanLiteralTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/BooleanLiteralTransformer */ "./src/node-transformers/converting-transformers/BooleanLiteralTransformer.ts");
  2172. const ExportSpecifierTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/ExportSpecifierTransformer */ "./src/node-transformers/converting-transformers/ExportSpecifierTransformer.ts");
  2173. const MemberExpressionTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/MemberExpressionTransformer */ "./src/node-transformers/converting-transformers/MemberExpressionTransformer.ts");
  2174. const MethodDefinitionTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/MethodDefinitionTransformer */ "./src/node-transformers/converting-transformers/MethodDefinitionTransformer.ts");
  2175. const NumberLiteralTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/NumberLiteralTransformer */ "./src/node-transformers/converting-transformers/NumberLiteralTransformer.ts");
  2176. const NumberToNumericalExpressionTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/NumberToNumericalExpressionTransformer */ "./src/node-transformers/converting-transformers/NumberToNumericalExpressionTransformer.ts");
  2177. const ObjectExpressionKeysTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/ObjectExpressionKeysTransformer */ "./src/node-transformers/converting-transformers/ObjectExpressionKeysTransformer.ts");
  2178. const ObjectExpressionToVariableDeclarationExtractor_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/object-expression-extractors/ObjectExpressionToVariableDeclarationExtractor */ "./src/node-transformers/converting-transformers/object-expression-extractors/ObjectExpressionToVariableDeclarationExtractor.ts");
  2179. const ObjectExpressionTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/ObjectExpressionTransformer */ "./src/node-transformers/converting-transformers/ObjectExpressionTransformer.ts");
  2180. const ObjectPatternPropertiesTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/ObjectPatternPropertiesTransformer */ "./src/node-transformers/converting-transformers/ObjectPatternPropertiesTransformer.ts");
  2181. const SplitStringTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/SplitStringTransformer */ "./src/node-transformers/converting-transformers/SplitStringTransformer.ts");
  2182. const TemplateLiteralTransformer_1 = __webpack_require__(/*! ../../../node-transformers/converting-transformers/TemplateLiteralTransformer */ "./src/node-transformers/converting-transformers/TemplateLiteralTransformer.ts");
  2183. exports.convertingTransformersModule = new inversify_1.ContainerModule((bind) => {
  2184. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2185. .to(BooleanLiteralTransformer_1.BooleanLiteralTransformer)
  2186. .whenTargetNamed(NodeTransformer_1.NodeTransformer.BooleanLiteralTransformer);
  2187. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2188. .to(ExportSpecifierTransformer_1.ExportSpecifierTransformer)
  2189. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ExportSpecifierTransformer);
  2190. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2191. .to(MemberExpressionTransformer_1.MemberExpressionTransformer)
  2192. .whenTargetNamed(NodeTransformer_1.NodeTransformer.MemberExpressionTransformer);
  2193. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2194. .to(MethodDefinitionTransformer_1.MethodDefinitionTransformer)
  2195. .whenTargetNamed(NodeTransformer_1.NodeTransformer.MethodDefinitionTransformer);
  2196. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2197. .to(NumberLiteralTransformer_1.NumberLiteralTransformer)
  2198. .whenTargetNamed(NodeTransformer_1.NodeTransformer.NumberLiteralTransformer);
  2199. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2200. .to(NumberToNumericalExpressionTransformer_1.NumberToNumericalExpressionTransformer)
  2201. .whenTargetNamed(NodeTransformer_1.NodeTransformer.NumberToNumericalExpressionTransformer);
  2202. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2203. .to(ObjectExpressionKeysTransformer_1.ObjectExpressionKeysTransformer)
  2204. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ObjectExpressionKeysTransformer);
  2205. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2206. .to(ObjectExpressionTransformer_1.ObjectExpressionTransformer)
  2207. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ObjectExpressionTransformer);
  2208. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2209. .to(ObjectPatternPropertiesTransformer_1.ObjectPatternPropertiesTransformer)
  2210. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ObjectPatternPropertiesTransformer);
  2211. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2212. .to(SplitStringTransformer_1.SplitStringTransformer)
  2213. .whenTargetNamed(NodeTransformer_1.NodeTransformer.SplitStringTransformer);
  2214. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2215. .to(TemplateLiteralTransformer_1.TemplateLiteralTransformer)
  2216. .whenTargetNamed(NodeTransformer_1.NodeTransformer.TemplateLiteralTransformer);
  2217. bind(ServiceIdentifiers_1.ServiceIdentifiers.IObjectExpressionExtractor)
  2218. .to(ObjectExpressionToVariableDeclarationExtractor_1.ObjectExpressionToVariableDeclarationExtractor)
  2219. .whenTargetNamed(ObjectExpressionExtractor_1.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor);
  2220. bind(ServiceIdentifiers_1.ServiceIdentifiers.IObjectExpressionExtractor)
  2221. .to(BasePropertiesExtractor_1.BasePropertiesExtractor)
  2222. .whenTargetNamed(ObjectExpressionExtractor_1.ObjectExpressionExtractor.BasePropertiesExtractor);
  2223. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IObjectExpressionExtractor)
  2224. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2225. .getCacheFactory(ServiceIdentifiers_1.ServiceIdentifiers.IObjectExpressionExtractor));
  2226. });
  2227. /***/ }),
  2228. /***/ "./src/container/modules/node-transformers/DeadCodeInjectionTransformersModule.ts":
  2229. /*!****************************************************************************************!*\
  2230. !*** ./src/container/modules/node-transformers/DeadCodeInjectionTransformersModule.ts ***!
  2231. \****************************************************************************************/
  2232. /*! flagged exports */
  2233. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2234. /*! export deadCodeInjectionTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2235. /*! other exports [not provided] [no usage info] */
  2236. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2237. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2238. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2239. exports.deadCodeInjectionTransformersModule = void 0;
  2240. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2241. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2242. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2243. const DeadCodeInjectionTransformer_1 = __webpack_require__(/*! ../../../node-transformers/dead-code-injection-transformers/DeadCodeInjectionTransformer */ "./src/node-transformers/dead-code-injection-transformers/DeadCodeInjectionTransformer.ts");
  2244. exports.deadCodeInjectionTransformersModule = new inversify_1.ContainerModule((bind) => {
  2245. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2246. .to(DeadCodeInjectionTransformer_1.DeadCodeInjectionTransformer)
  2247. .whenTargetNamed(NodeTransformer_1.NodeTransformer.DeadCodeInjectionTransformer);
  2248. });
  2249. /***/ }),
  2250. /***/ "./src/container/modules/node-transformers/FinalizingTransformersModule.ts":
  2251. /*!*********************************************************************************!*\
  2252. !*** ./src/container/modules/node-transformers/FinalizingTransformersModule.ts ***!
  2253. \*********************************************************************************/
  2254. /*! flagged exports */
  2255. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2256. /*! export finalizingTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2257. /*! other exports [not provided] [no usage info] */
  2258. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2259. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2260. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2261. exports.finalizingTransformersModule = void 0;
  2262. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2263. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2264. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2265. const EscapeSequenceTransformer_1 = __webpack_require__(/*! ../../../node-transformers/finalizing-transformers/EscapeSequenceTransformer */ "./src/node-transformers/finalizing-transformers/EscapeSequenceTransformer.ts");
  2266. exports.finalizingTransformersModule = new inversify_1.ContainerModule((bind) => {
  2267. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2268. .to(EscapeSequenceTransformer_1.EscapeSequenceTransformer)
  2269. .whenTargetNamed(NodeTransformer_1.NodeTransformer.EscapeSequenceTransformer);
  2270. });
  2271. /***/ }),
  2272. /***/ "./src/container/modules/node-transformers/InitializingTransformersModule.ts":
  2273. /*!***********************************************************************************!*\
  2274. !*** ./src/container/modules/node-transformers/InitializingTransformersModule.ts ***!
  2275. \***********************************************************************************/
  2276. /*! flagged exports */
  2277. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2278. /*! export initializingTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2279. /*! other exports [not provided] [no usage info] */
  2280. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2281. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2282. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2283. exports.initializingTransformersModule = void 0;
  2284. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2285. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2286. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2287. const CommentsTransformer_1 = __webpack_require__(/*! ../../../node-transformers/initializing-transformers/CommentsTransformer */ "./src/node-transformers/initializing-transformers/CommentsTransformer.ts");
  2288. exports.initializingTransformersModule = new inversify_1.ContainerModule((bind) => {
  2289. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2290. .to(CommentsTransformer_1.CommentsTransformer)
  2291. .whenTargetNamed(NodeTransformer_1.NodeTransformer.CommentsTransformer);
  2292. });
  2293. /***/ }),
  2294. /***/ "./src/container/modules/node-transformers/NodeTransformersModule.ts":
  2295. /*!***************************************************************************!*\
  2296. !*** ./src/container/modules/node-transformers/NodeTransformersModule.ts ***!
  2297. \***************************************************************************/
  2298. /*! flagged exports */
  2299. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2300. /*! export nodeTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2301. /*! other exports [not provided] [no usage info] */
  2302. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2303. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2304. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2305. exports.nodeTransformersModule = void 0;
  2306. const InversifyContainerFacade_1 = __webpack_require__(/*! ../../InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  2307. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2308. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2309. const NodeTransformerNamesGroupsBuilder_1 = __webpack_require__(/*! ../../../node-transformers/NodeTransformerNamesGroupsBuilder */ "./src/node-transformers/NodeTransformerNamesGroupsBuilder.ts");
  2310. exports.nodeTransformersModule = new inversify_1.ContainerModule((bind) => {
  2311. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__INodeTransformer)
  2312. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2313. .getCacheFactory(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer));
  2314. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)
  2315. .to(NodeTransformerNamesGroupsBuilder_1.NodeTransformerNamesGroupsBuilder)
  2316. .inSingletonScope();
  2317. });
  2318. /***/ }),
  2319. /***/ "./src/container/modules/node-transformers/PreparingTransformersModule.ts":
  2320. /*!********************************************************************************!*\
  2321. !*** ./src/container/modules/node-transformers/PreparingTransformersModule.ts ***!
  2322. \********************************************************************************/
  2323. /*! flagged exports */
  2324. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2325. /*! export preparingTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2326. /*! other exports [not provided] [no usage info] */
  2327. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2328. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2329. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2330. exports.preparingTransformersModule = void 0;
  2331. const InversifyContainerFacade_1 = __webpack_require__(/*! ../../InversifyContainerFacade */ "./src/container/InversifyContainerFacade.ts");
  2332. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2333. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2334. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2335. const ObfuscatingGuard_1 = __webpack_require__(/*! ../../../enums/node-transformers/preparing-transformers/obfuscating-guards/ObfuscatingGuard */ "./src/enums/node-transformers/preparing-transformers/obfuscating-guards/ObfuscatingGuard.ts");
  2336. const BlackListObfuscatingGuard_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/obfuscating-guards/BlackListObfuscatingGuard */ "./src/node-transformers/preparing-transformers/obfuscating-guards/BlackListObfuscatingGuard.ts");
  2337. const ConditionalCommentObfuscatingGuard_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/obfuscating-guards/ConditionalCommentObfuscatingGuard */ "./src/node-transformers/preparing-transformers/obfuscating-guards/ConditionalCommentObfuscatingGuard.ts");
  2338. const CustomCodeHelpersTransformer_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/CustomCodeHelpersTransformer */ "./src/node-transformers/preparing-transformers/CustomCodeHelpersTransformer.ts");
  2339. const EvalCallExpressionTransformer_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/EvalCallExpressionTransformer */ "./src/node-transformers/preparing-transformers/EvalCallExpressionTransformer.ts");
  2340. const ForceTransformStringObfuscatingGuard_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/obfuscating-guards/ForceTransformStringObfuscatingGuard */ "./src/node-transformers/preparing-transformers/obfuscating-guards/ForceTransformStringObfuscatingGuard.ts");
  2341. const IgnoredRequireImportObfuscatingGuard_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/obfuscating-guards/IgnoredRequireImportObfuscatingGuard */ "./src/node-transformers/preparing-transformers/obfuscating-guards/IgnoredRequireImportObfuscatingGuard.ts");
  2342. const MetadataTransformer_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/MetadataTransformer */ "./src/node-transformers/preparing-transformers/MetadataTransformer.ts");
  2343. const ObfuscatingGuardsTransformer_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/ObfuscatingGuardsTransformer */ "./src/node-transformers/preparing-transformers/ObfuscatingGuardsTransformer.ts");
  2344. const ParentificationTransformer_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/ParentificationTransformer */ "./src/node-transformers/preparing-transformers/ParentificationTransformer.ts");
  2345. const ReservedStringObfuscatingGuard_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/obfuscating-guards/ReservedStringObfuscatingGuard */ "./src/node-transformers/preparing-transformers/obfuscating-guards/ReservedStringObfuscatingGuard.ts");
  2346. const VariablePreserveTransformer_1 = __webpack_require__(/*! ../../../node-transformers/preparing-transformers/VariablePreserveTransformer */ "./src/node-transformers/preparing-transformers/VariablePreserveTransformer.ts");
  2347. exports.preparingTransformersModule = new inversify_1.ContainerModule((bind) => {
  2348. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2349. .to(CustomCodeHelpersTransformer_1.CustomCodeHelpersTransformer)
  2350. .whenTargetNamed(NodeTransformer_1.NodeTransformer.CustomCodeHelpersTransformer);
  2351. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2352. .to(EvalCallExpressionTransformer_1.EvalCallExpressionTransformer)
  2353. .whenTargetNamed(NodeTransformer_1.NodeTransformer.EvalCallExpressionTransformer);
  2354. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2355. .to(MetadataTransformer_1.MetadataTransformer)
  2356. .whenTargetNamed(NodeTransformer_1.NodeTransformer.MetadataTransformer);
  2357. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2358. .to(ObfuscatingGuardsTransformer_1.ObfuscatingGuardsTransformer)
  2359. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ObfuscatingGuardsTransformer);
  2360. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2361. .to(ParentificationTransformer_1.ParentificationTransformer)
  2362. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ParentificationTransformer);
  2363. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2364. .to(VariablePreserveTransformer_1.VariablePreserveTransformer)
  2365. .whenTargetNamed(NodeTransformer_1.NodeTransformer.VariablePreserveTransformer);
  2366. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeGuard)
  2367. .to(BlackListObfuscatingGuard_1.BlackListObfuscatingGuard)
  2368. .inSingletonScope()
  2369. .whenTargetNamed(ObfuscatingGuard_1.ObfuscatingGuard.BlackListObfuscatingGuard);
  2370. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeGuard)
  2371. .to(ConditionalCommentObfuscatingGuard_1.ConditionalCommentObfuscatingGuard)
  2372. .inSingletonScope()
  2373. .whenTargetNamed(ObfuscatingGuard_1.ObfuscatingGuard.ConditionalCommentObfuscatingGuard);
  2374. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeGuard)
  2375. .to(ForceTransformStringObfuscatingGuard_1.ForceTransformStringObfuscatingGuard)
  2376. .inSingletonScope()
  2377. .whenTargetNamed(ObfuscatingGuard_1.ObfuscatingGuard.ForceTransformStringObfuscatingGuard);
  2378. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeGuard)
  2379. .to(IgnoredRequireImportObfuscatingGuard_1.IgnoredRequireImportObfuscatingGuard)
  2380. .inSingletonScope()
  2381. .whenTargetNamed(ObfuscatingGuard_1.ObfuscatingGuard.IgnoredRequireImportObfuscatingGuard);
  2382. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeGuard)
  2383. .to(ReservedStringObfuscatingGuard_1.ReservedStringObfuscatingGuard)
  2384. .inSingletonScope()
  2385. .whenTargetNamed(ObfuscatingGuard_1.ObfuscatingGuard.ReservedStringObfuscatingGuard);
  2386. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__INodeGuard)
  2387. .toFactory(InversifyContainerFacade_1.InversifyContainerFacade
  2388. .getCacheFactory(ServiceIdentifiers_1.ServiceIdentifiers.INodeGuard));
  2389. });
  2390. /***/ }),
  2391. /***/ "./src/container/modules/node-transformers/RenameIdentifiersTransformersModule.ts":
  2392. /*!****************************************************************************************!*\
  2393. !*** ./src/container/modules/node-transformers/RenameIdentifiersTransformersModule.ts ***!
  2394. \****************************************************************************************/
  2395. /*! flagged exports */
  2396. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2397. /*! export renameIdentifiersTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2398. /*! other exports [not provided] [no usage info] */
  2399. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2400. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2401. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2402. exports.renameIdentifiersTransformersModule = void 0;
  2403. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2404. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2405. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2406. const IdentifierReplacer_1 = __webpack_require__(/*! ../../../node-transformers/rename-identifiers-transformers/replacer/IdentifierReplacer */ "./src/node-transformers/rename-identifiers-transformers/replacer/IdentifierReplacer.ts");
  2407. const LabeledStatementTransformer_1 = __webpack_require__(/*! ../../../node-transformers/rename-identifiers-transformers/LabeledStatementTransformer */ "./src/node-transformers/rename-identifiers-transformers/LabeledStatementTransformer.ts");
  2408. const ScopeIdentifiersTransformer_1 = __webpack_require__(/*! ../../../node-transformers/rename-identifiers-transformers/ScopeIdentifiersTransformer */ "./src/node-transformers/rename-identifiers-transformers/ScopeIdentifiersTransformer.ts");
  2409. const ScopeThroughIdentifiersTransformer_1 = __webpack_require__(/*! ../../../node-transformers/rename-identifiers-transformers/ScopeThroughIdentifiersTransformer */ "./src/node-transformers/rename-identifiers-transformers/ScopeThroughIdentifiersTransformer.ts");
  2410. exports.renameIdentifiersTransformersModule = new inversify_1.ContainerModule((bind) => {
  2411. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2412. .to(LabeledStatementTransformer_1.LabeledStatementTransformer)
  2413. .whenTargetNamed(NodeTransformer_1.NodeTransformer.LabeledStatementTransformer);
  2414. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2415. .to(ScopeIdentifiersTransformer_1.ScopeIdentifiersTransformer)
  2416. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ScopeIdentifiersTransformer);
  2417. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2418. .to(ScopeThroughIdentifiersTransformer_1.ScopeThroughIdentifiersTransformer)
  2419. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ScopeThroughIdentifiersTransformer);
  2420. bind(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierReplacer)
  2421. .to(IdentifierReplacer_1.IdentifierReplacer)
  2422. .inSingletonScope();
  2423. });
  2424. /***/ }),
  2425. /***/ "./src/container/modules/node-transformers/RenamePropertiesTransformersModule.ts":
  2426. /*!***************************************************************************************!*\
  2427. !*** ./src/container/modules/node-transformers/RenamePropertiesTransformersModule.ts ***!
  2428. \***************************************************************************************/
  2429. /*! flagged exports */
  2430. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2431. /*! export renamePropertiesTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2432. /*! other exports [not provided] [no usage info] */
  2433. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2434. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2435. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2436. exports.renamePropertiesTransformersModule = void 0;
  2437. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2438. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2439. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2440. const RenamePropertiesReplacer_1 = __webpack_require__(/*! ../../../node-transformers/rename-properties-transformers/replacer/RenamePropertiesReplacer */ "./src/node-transformers/rename-properties-transformers/replacer/RenamePropertiesReplacer.ts");
  2441. const RenamePropertiesTransformer_1 = __webpack_require__(/*! ../../../node-transformers/rename-properties-transformers/RenamePropertiesTransformer */ "./src/node-transformers/rename-properties-transformers/RenamePropertiesTransformer.ts");
  2442. exports.renamePropertiesTransformersModule = new inversify_1.ContainerModule((bind) => {
  2443. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2444. .to(RenamePropertiesTransformer_1.RenamePropertiesTransformer)
  2445. .whenTargetNamed(NodeTransformer_1.NodeTransformer.RenamePropertiesTransformer);
  2446. bind(ServiceIdentifiers_1.ServiceIdentifiers.IRenamePropertiesReplacer)
  2447. .to(RenamePropertiesReplacer_1.RenamePropertiesReplacer);
  2448. });
  2449. /***/ }),
  2450. /***/ "./src/container/modules/node-transformers/SimplifyingTransformersModule.ts":
  2451. /*!**********************************************************************************!*\
  2452. !*** ./src/container/modules/node-transformers/SimplifyingTransformersModule.ts ***!
  2453. \**********************************************************************************/
  2454. /*! flagged exports */
  2455. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2456. /*! export simplifyingTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2457. /*! other exports [not provided] [no usage info] */
  2458. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2459. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2460. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2461. exports.simplifyingTransformersModule = void 0;
  2462. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2463. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2464. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2465. const BlockStatementSimplifyTransformer_1 = __webpack_require__(/*! ../../../node-transformers/simplifying-transformers/BlockStatementSimplifyTransformer */ "./src/node-transformers/simplifying-transformers/BlockStatementSimplifyTransformer.ts");
  2466. const ExpressionStatementsMergeTransformer_1 = __webpack_require__(/*! ../../../node-transformers/simplifying-transformers/ExpressionStatementsMergeTransformer */ "./src/node-transformers/simplifying-transformers/ExpressionStatementsMergeTransformer.ts");
  2467. const IfStatementSimplifyTransformer_1 = __webpack_require__(/*! ../../../node-transformers/simplifying-transformers/IfStatementSimplifyTransformer */ "./src/node-transformers/simplifying-transformers/IfStatementSimplifyTransformer.ts");
  2468. const VariableDeclarationsMergeTransformer_1 = __webpack_require__(/*! ../../../node-transformers/simplifying-transformers/VariableDeclarationsMergeTransformer */ "./src/node-transformers/simplifying-transformers/VariableDeclarationsMergeTransformer.ts");
  2469. exports.simplifyingTransformersModule = new inversify_1.ContainerModule((bind) => {
  2470. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2471. .to(BlockStatementSimplifyTransformer_1.BlockStatementSimplifyTransformer)
  2472. .whenTargetNamed(NodeTransformer_1.NodeTransformer.BlockStatementSimplifyTransformer);
  2473. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2474. .to(ExpressionStatementsMergeTransformer_1.ExpressionStatementsMergeTransformer)
  2475. .whenTargetNamed(NodeTransformer_1.NodeTransformer.ExpressionStatementsMergeTransformer);
  2476. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2477. .to(IfStatementSimplifyTransformer_1.IfStatementSimplifyTransformer)
  2478. .whenTargetNamed(NodeTransformer_1.NodeTransformer.IfStatementSimplifyTransformer);
  2479. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2480. .to(VariableDeclarationsMergeTransformer_1.VariableDeclarationsMergeTransformer)
  2481. .whenTargetNamed(NodeTransformer_1.NodeTransformer.VariableDeclarationsMergeTransformer);
  2482. });
  2483. /***/ }),
  2484. /***/ "./src/container/modules/node-transformers/StringArrayTransformersModule.ts":
  2485. /*!**********************************************************************************!*\
  2486. !*** ./src/container/modules/node-transformers/StringArrayTransformersModule.ts ***!
  2487. \**********************************************************************************/
  2488. /*! flagged exports */
  2489. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2490. /*! export stringArrayTransformersModule [provided] [no usage info] [missing usage info prevents renaming] */
  2491. /*! other exports [not provided] [no usage info] */
  2492. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2493. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2494. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2495. exports.stringArrayTransformersModule = void 0;
  2496. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2497. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2498. const NodeTransformer_1 = __webpack_require__(/*! ../../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  2499. const StringArrayScopeCallsWrapperTransformer_1 = __webpack_require__(/*! ../../../node-transformers/string-array-transformers/StringArrayScopeCallsWrapperTransformer */ "./src/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperTransformer.ts");
  2500. const StringArrayTransformer_1 = __webpack_require__(/*! ../../../node-transformers/string-array-transformers/StringArrayTransformer */ "./src/node-transformers/string-array-transformers/StringArrayTransformer.ts");
  2501. exports.stringArrayTransformersModule = new inversify_1.ContainerModule((bind) => {
  2502. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2503. .to(StringArrayScopeCallsWrapperTransformer_1.StringArrayScopeCallsWrapperTransformer)
  2504. .whenTargetNamed(NodeTransformer_1.NodeTransformer.StringArrayScopeCallsWrapperTransformer);
  2505. bind(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformer)
  2506. .to(StringArrayTransformer_1.StringArrayTransformer)
  2507. .whenTargetNamed(NodeTransformer_1.NodeTransformer.StringArrayTransformer);
  2508. });
  2509. /***/ }),
  2510. /***/ "./src/container/modules/node/NodeModule.ts":
  2511. /*!**************************************************!*\
  2512. !*** ./src/container/modules/node/NodeModule.ts ***!
  2513. \**************************************************/
  2514. /*! flagged exports */
  2515. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2516. /*! export nodeModule [provided] [no usage info] [missing usage info prevents renaming] */
  2517. /*! other exports [not provided] [no usage info] */
  2518. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2519. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2520. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2521. exports.nodeModule = void 0;
  2522. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2523. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2524. const ScopeIdentifiersTraverser_1 = __webpack_require__(/*! ../../../node/ScopeIdentifiersTraverser */ "./src/node/ScopeIdentifiersTraverser.ts");
  2525. exports.nodeModule = new inversify_1.ContainerModule((bind) => {
  2526. bind(ServiceIdentifiers_1.ServiceIdentifiers.IScopeIdentifiersTraverser)
  2527. .to(ScopeIdentifiersTraverser_1.ScopeIdentifiersTraverser)
  2528. .inSingletonScope();
  2529. });
  2530. /***/ }),
  2531. /***/ "./src/container/modules/options/OptionsModule.ts":
  2532. /*!********************************************************!*\
  2533. !*** ./src/container/modules/options/OptionsModule.ts ***!
  2534. \********************************************************/
  2535. /*! flagged exports */
  2536. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2537. /*! export optionsModule [provided] [no usage info] [missing usage info prevents renaming] */
  2538. /*! other exports [not provided] [no usage info] */
  2539. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2540. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2541. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2542. exports.optionsModule = void 0;
  2543. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2544. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2545. const Options_1 = __webpack_require__(/*! ../../../options/Options */ "./src/options/Options.ts");
  2546. const OptionsNormalizer_1 = __webpack_require__(/*! ../../../options/OptionsNormalizer */ "./src/options/OptionsNormalizer.ts");
  2547. exports.optionsModule = new inversify_1.ContainerModule((bind) => {
  2548. bind(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)
  2549. .to(Options_1.Options)
  2550. .inSingletonScope();
  2551. bind(ServiceIdentifiers_1.ServiceIdentifiers.IOptionsNormalizer)
  2552. .to(OptionsNormalizer_1.OptionsNormalizer)
  2553. .inSingletonScope();
  2554. });
  2555. /***/ }),
  2556. /***/ "./src/container/modules/storages/StoragesModule.ts":
  2557. /*!**********************************************************!*\
  2558. !*** ./src/container/modules/storages/StoragesModule.ts ***!
  2559. \**********************************************************/
  2560. /*! flagged exports */
  2561. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2562. /*! export storagesModule [provided] [no usage info] [missing usage info prevents renaming] */
  2563. /*! other exports [not provided] [no usage info] */
  2564. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2565. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2566. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2567. exports.storagesModule = void 0;
  2568. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2569. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2570. const ControlFlowStorage_1 = __webpack_require__(/*! ../../../storages/custom-nodes/ControlFlowStorage */ "./src/storages/custom-nodes/ControlFlowStorage.ts");
  2571. const CustomCodeHelperGroupStorage_1 = __webpack_require__(/*! ../../../storages/custom-code-helpers/CustomCodeHelperGroupStorage */ "./src/storages/custom-code-helpers/CustomCodeHelperGroupStorage.ts");
  2572. const LiteralNodesCacheStorage_1 = __webpack_require__(/*! ../../../storages/string-array-transformers/LiteralNodesCacheStorage */ "./src/storages/string-array-transformers/LiteralNodesCacheStorage.ts");
  2573. const StringArrayScopeCallsWrapperLexicalScopeDataStorage_1 = __webpack_require__(/*! ../../../storages/string-array-transformers/StringArrayScopeCallsWrapperLexicalScopeDataStorage */ "./src/storages/string-array-transformers/StringArrayScopeCallsWrapperLexicalScopeDataStorage.ts");
  2574. const StringArrayScopeCallsWrapperNamesDataStorage_1 = __webpack_require__(/*! ../../../storages/string-array-transformers/StringArrayScopeCallsWrapperNamesDataStorage */ "./src/storages/string-array-transformers/StringArrayScopeCallsWrapperNamesDataStorage.ts");
  2575. const StringArrayStorage_1 = __webpack_require__(/*! ../../../storages/string-array-transformers/StringArrayStorage */ "./src/storages/string-array-transformers/StringArrayStorage.ts");
  2576. const VisitedLexicalScopeNodesStackStorage_1 = __webpack_require__(/*! ../../../storages/string-array-transformers/VisitedLexicalScopeNodesStackStorage */ "./src/storages/string-array-transformers/VisitedLexicalScopeNodesStackStorage.ts");
  2577. exports.storagesModule = new inversify_1.ContainerModule((bind) => {
  2578. bind(ServiceIdentifiers_1.ServiceIdentifiers.TCustomNodeGroupStorage)
  2579. .to(CustomCodeHelperGroupStorage_1.CustomCodeHelperGroupStorage)
  2580. .inSingletonScope();
  2581. bind(ServiceIdentifiers_1.ServiceIdentifiers.ILiteralNodesCacheStorage)
  2582. .to(LiteralNodesCacheStorage_1.LiteralNodesCacheStorage)
  2583. .inSingletonScope();
  2584. bind(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)
  2585. .to(StringArrayStorage_1.StringArrayStorage)
  2586. .inSingletonScope();
  2587. bind(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayScopeCallsWrapperLexicalScopeDataStorage)
  2588. .to(StringArrayScopeCallsWrapperLexicalScopeDataStorage_1.StringArrayScopeCallsWrapperLexicalScopeDataStorage)
  2589. .inSingletonScope();
  2590. bind(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayScopeCallsWrapperNamesDataStorage)
  2591. .to(StringArrayScopeCallsWrapperNamesDataStorage_1.StringArrayScopeCallsWrapperNamesDataStorage)
  2592. .inSingletonScope();
  2593. bind(ServiceIdentifiers_1.ServiceIdentifiers.IVisitedLexicalScopeNodesStackStorage)
  2594. .to(VisitedLexicalScopeNodesStackStorage_1.VisitedLexicalScopeNodesStackStorage)
  2595. .inSingletonScope();
  2596. bind(ServiceIdentifiers_1.ServiceIdentifiers.Newable__TControlFlowStorage)
  2597. .toConstructor(ControlFlowStorage_1.ControlFlowStorage);
  2598. bind(ServiceIdentifiers_1.ServiceIdentifiers.Factory__TControlFlowStorage)
  2599. .toFactory((context) => {
  2600. return () => {
  2601. const constructor = context.container
  2602. .get(ServiceIdentifiers_1.ServiceIdentifiers.Newable__TControlFlowStorage);
  2603. const randomGenerator = context.container
  2604. .get(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator);
  2605. const options = context.container
  2606. .get(ServiceIdentifiers_1.ServiceIdentifiers.IOptions);
  2607. const storage = new constructor(randomGenerator, options);
  2608. storage.initialize();
  2609. return storage;
  2610. };
  2611. });
  2612. });
  2613. /***/ }),
  2614. /***/ "./src/container/modules/utils/UtilsModule.ts":
  2615. /*!****************************************************!*\
  2616. !*** ./src/container/modules/utils/UtilsModule.ts ***!
  2617. \****************************************************/
  2618. /*! flagged exports */
  2619. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2620. /*! export utilsModule [provided] [no usage info] [missing usage info prevents renaming] */
  2621. /*! other exports [not provided] [no usage info] */
  2622. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  2623. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  2624. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2625. exports.utilsModule = void 0;
  2626. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2627. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2628. const ArrayUtils_1 = __webpack_require__(/*! ../../../utils/ArrayUtils */ "./src/utils/ArrayUtils.ts");
  2629. const CryptUtils_1 = __webpack_require__(/*! ../../../utils/CryptUtils */ "./src/utils/CryptUtils.ts");
  2630. const CryptUtilsSwappedAlphabet_1 = __webpack_require__(/*! ../../../utils/CryptUtilsSwappedAlphabet */ "./src/utils/CryptUtilsSwappedAlphabet.ts");
  2631. const EscapeSequenceEncoder_1 = __webpack_require__(/*! ../../../utils/EscapeSequenceEncoder */ "./src/utils/EscapeSequenceEncoder.ts");
  2632. const LevelledTopologicalSorter_1 = __webpack_require__(/*! ../../../utils/LevelledTopologicalSorter */ "./src/utils/LevelledTopologicalSorter.ts");
  2633. const RandomGenerator_1 = __webpack_require__(/*! ../../../utils/RandomGenerator */ "./src/utils/RandomGenerator.ts");
  2634. exports.utilsModule = new inversify_1.ContainerModule((bind) => {
  2635. bind(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)
  2636. .to(ArrayUtils_1.ArrayUtils)
  2637. .inSingletonScope();
  2638. bind(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)
  2639. .to(RandomGenerator_1.RandomGenerator)
  2640. .inSingletonScope();
  2641. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICryptUtils)
  2642. .to(CryptUtils_1.CryptUtils)
  2643. .inSingletonScope();
  2644. bind(ServiceIdentifiers_1.ServiceIdentifiers.ICryptUtilsSwappedAlphabet)
  2645. .to(CryptUtilsSwappedAlphabet_1.CryptUtilsSwappedAlphabet)
  2646. .inSingletonScope();
  2647. bind(ServiceIdentifiers_1.ServiceIdentifiers.IEscapeSequenceEncoder)
  2648. .to(EscapeSequenceEncoder_1.EscapeSequenceEncoder)
  2649. .inSingletonScope();
  2650. bind(ServiceIdentifiers_1.ServiceIdentifiers.ILevelledTopologicalSorter)
  2651. .to(LevelledTopologicalSorter_1.LevelledTopologicalSorter);
  2652. });
  2653. /***/ }),
  2654. /***/ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts":
  2655. /*!*************************************************************!*\
  2656. !*** ./src/custom-code-helpers/AbstractCustomCodeHelper.ts ***!
  2657. \*************************************************************/
  2658. /*! unknown exports (runtime-defined) */
  2659. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  2660. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  2661. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  2662. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  2663. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  2664. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  2665. return c > 3 && r && Object.defineProperty(target, key, r), r;
  2666. };
  2667. var __metadata = (this && this.__metadata) || function (k, v) {
  2668. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  2669. };
  2670. var __param = (this && this.__param) || function (paramIndex, decorator) {
  2671. return function (target, key) { decorator(target, key, paramIndex); }
  2672. };
  2673. var AbstractCustomCodeHelper_1, _a, _b, _c, _d, _e;
  2674. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2675. exports.AbstractCustomCodeHelper = void 0;
  2676. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2677. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2678. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  2679. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  2680. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  2681. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  2682. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  2683. const GlobalVariableTemplate1_1 = __webpack_require__(/*! ./common/templates/GlobalVariableTemplate1 */ "./src/custom-code-helpers/common/templates/GlobalVariableTemplate1.ts");
  2684. const GlobalVariableTemplate2_1 = __webpack_require__(/*! ./common/templates/GlobalVariableTemplate2 */ "./src/custom-code-helpers/common/templates/GlobalVariableTemplate2.ts");
  2685. let AbstractCustomCodeHelper = AbstractCustomCodeHelper_1 = class AbstractCustomCodeHelper {
  2686. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options) {
  2687. this.cachedNode = null;
  2688. this.identifierNamesGenerator = identifierNamesGeneratorFactory(options);
  2689. this.customCodeHelperFormatter = customCodeHelperFormatter;
  2690. this.customCodeHelperObfuscator = customCodeHelperObfuscator;
  2691. this.randomGenerator = randomGenerator;
  2692. this.options = options;
  2693. }
  2694. getNode() {
  2695. if (!this.cachedNode) {
  2696. const codeHelperTemplate = this.getCodeHelperTemplate();
  2697. this.cachedNode = this.customCodeHelperFormatter.formatStructure(this.getNodeStructure(codeHelperTemplate));
  2698. }
  2699. return this.cachedNode;
  2700. }
  2701. getGlobalVariableTemplate() {
  2702. return this.randomGenerator
  2703. .getRandomGenerator()
  2704. .pickone(AbstractCustomCodeHelper_1.globalVariableTemplateFunctions);
  2705. }
  2706. getCodeHelperTemplate() {
  2707. return '';
  2708. }
  2709. };
  2710. AbstractCustomCodeHelper.globalVariableTemplateFunctions = [
  2711. GlobalVariableTemplate1_1.GlobalVariableTemplate1(),
  2712. GlobalVariableTemplate2_1.GlobalVariableTemplate2()
  2713. ];
  2714. AbstractCustomCodeHelper = AbstractCustomCodeHelper_1 = __decorate([
  2715. inversify_1.injectable(),
  2716. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  2717. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  2718. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  2719. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  2720. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  2721. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  2722. ], AbstractCustomCodeHelper);
  2723. exports.AbstractCustomCodeHelper = AbstractCustomCodeHelper;
  2724. /***/ }),
  2725. /***/ "./src/custom-code-helpers/AbstractCustomCodeHelperGroup.ts":
  2726. /*!******************************************************************!*\
  2727. !*** ./src/custom-code-helpers/AbstractCustomCodeHelperGroup.ts ***!
  2728. \******************************************************************/
  2729. /*! unknown exports (runtime-defined) */
  2730. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  2731. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  2732. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  2733. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  2734. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  2735. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  2736. return c > 3 && r && Object.defineProperty(target, key, r), r;
  2737. };
  2738. var __metadata = (this && this.__metadata) || function (k, v) {
  2739. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  2740. };
  2741. var __param = (this && this.__param) || function (paramIndex, decorator) {
  2742. return function (target, key) { decorator(target, key, paramIndex); }
  2743. };
  2744. var _a, _b, _c;
  2745. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2746. exports.AbstractCustomCodeHelperGroup = void 0;
  2747. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2748. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2749. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  2750. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  2751. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  2752. let AbstractCustomCodeHelperGroup = class AbstractCustomCodeHelperGroup {
  2753. constructor(identifierNamesGeneratorFactory, randomGenerator, options) {
  2754. this.identifierNamesGenerator = identifierNamesGeneratorFactory(options);
  2755. this.randomGenerator = randomGenerator;
  2756. this.options = options;
  2757. }
  2758. getAppendEvent() {
  2759. return this.appendEvent;
  2760. }
  2761. getCustomCodeHelpers() {
  2762. return this.customCodeHelpers;
  2763. }
  2764. appendCustomNodeIfExist(customCodeHelperName, callback) {
  2765. const customCodeHelper = this.customCodeHelpers.get(customCodeHelperName);
  2766. if (!customCodeHelper) {
  2767. return;
  2768. }
  2769. callback(customCodeHelper);
  2770. }
  2771. getRandomCallsGraphIndex(callsGraphLength) {
  2772. return this.randomGenerator.getRandomInteger(0, Math.max(0, Math.round(callsGraphLength - 1)));
  2773. }
  2774. };
  2775. AbstractCustomCodeHelperGroup = __decorate([
  2776. inversify_1.injectable(),
  2777. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  2778. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  2779. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  2780. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  2781. ], AbstractCustomCodeHelperGroup);
  2782. exports.AbstractCustomCodeHelperGroup = AbstractCustomCodeHelperGroup;
  2783. /***/ }),
  2784. /***/ "./src/custom-code-helpers/CustomCodeHelperFormatter.ts":
  2785. /*!**************************************************************!*\
  2786. !*** ./src/custom-code-helpers/CustomCodeHelperFormatter.ts ***!
  2787. \**************************************************************/
  2788. /*! unknown exports (runtime-defined) */
  2789. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  2790. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  2791. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  2792. if (k2 === undefined) k2 = k;
  2793. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  2794. }) : (function(o, m, k, k2) {
  2795. if (k2 === undefined) k2 = k;
  2796. o[k2] = m[k];
  2797. }));
  2798. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  2799. Object.defineProperty(o, "default", { enumerable: true, value: v });
  2800. }) : function(o, v) {
  2801. o["default"] = v;
  2802. });
  2803. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  2804. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  2805. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  2806. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  2807. return c > 3 && r && Object.defineProperty(target, key, r), r;
  2808. };
  2809. var __importStar = (this && this.__importStar) || function (mod) {
  2810. if (mod && mod.__esModule) return mod;
  2811. var result = {};
  2812. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  2813. __setModuleDefault(result, mod);
  2814. return result;
  2815. };
  2816. var __metadata = (this && this.__metadata) || function (k, v) {
  2817. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  2818. };
  2819. var __param = (this && this.__param) || function (paramIndex, decorator) {
  2820. return function (target, key) { decorator(target, key, paramIndex); }
  2821. };
  2822. var __importDefault = (this && this.__importDefault) || function (mod) {
  2823. return (mod && mod.__esModule) ? mod : { "default": mod };
  2824. };
  2825. var _a;
  2826. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2827. exports.CustomCodeHelperFormatter = void 0;
  2828. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2829. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2830. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  2831. const string_template_1 = __importDefault(__webpack_require__(/*! string-template */ "string-template"));
  2832. const IPrevailingKindOfVariablesAnalyzer_1 = __webpack_require__(/*! ../interfaces/analyzers/calls-graph-analyzer/IPrevailingKindOfVariablesAnalyzer */ "./src/interfaces/analyzers/calls-graph-analyzer/IPrevailingKindOfVariablesAnalyzer.ts");
  2833. const NodeGuards_1 = __webpack_require__(/*! ../node/NodeGuards */ "./src/node/NodeGuards.ts");
  2834. let CustomCodeHelperFormatter = class CustomCodeHelperFormatter {
  2835. constructor(prevailingKindOfVariablesAnalyzer) {
  2836. this.prevailingKindOfVariables = prevailingKindOfVariablesAnalyzer.getPrevailingKind();
  2837. }
  2838. formatTemplate(template, mapping) {
  2839. return string_template_1.default(template, mapping);
  2840. }
  2841. formatStructure(statements) {
  2842. for (const statement of statements) {
  2843. estraverse.replace(statement, {
  2844. enter: (node) => {
  2845. if (!NodeGuards_1.NodeGuards.isVariableDeclarationNode(node)) {
  2846. return;
  2847. }
  2848. if (this.prevailingKindOfVariables === 'var') {
  2849. node.kind = 'var';
  2850. }
  2851. return node;
  2852. }
  2853. });
  2854. }
  2855. return statements;
  2856. }
  2857. };
  2858. CustomCodeHelperFormatter = __decorate([
  2859. inversify_1.injectable(),
  2860. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),
  2861. __metadata("design:paramtypes", [typeof (_a = typeof IPrevailingKindOfVariablesAnalyzer_1.IPrevailingKindOfVariablesAnalyzer !== "undefined" && IPrevailingKindOfVariablesAnalyzer_1.IPrevailingKindOfVariablesAnalyzer) === "function" ? _a : Object])
  2862. ], CustomCodeHelperFormatter);
  2863. exports.CustomCodeHelperFormatter = CustomCodeHelperFormatter;
  2864. /***/ }),
  2865. /***/ "./src/custom-code-helpers/CustomCodeHelperObfuscator.ts":
  2866. /*!***************************************************************!*\
  2867. !*** ./src/custom-code-helpers/CustomCodeHelperObfuscator.ts ***!
  2868. \***************************************************************/
  2869. /*! unknown exports (runtime-defined) */
  2870. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  2871. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  2872. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  2873. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  2874. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  2875. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  2876. return c > 3 && r && Object.defineProperty(target, key, r), r;
  2877. };
  2878. var __metadata = (this && this.__metadata) || function (k, v) {
  2879. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  2880. };
  2881. var __param = (this && this.__param) || function (paramIndex, decorator) {
  2882. return function (target, key) { decorator(target, key, paramIndex); }
  2883. };
  2884. var _a, _b;
  2885. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2886. exports.CustomCodeHelperObfuscator = void 0;
  2887. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2888. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2889. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  2890. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  2891. const NoCustomNodes_1 = __webpack_require__(/*! ../options/presets/NoCustomNodes */ "./src/options/presets/NoCustomNodes.ts");
  2892. const JavaScriptObfuscatorFacade_1 = __webpack_require__(/*! ../JavaScriptObfuscatorFacade */ "./src/JavaScriptObfuscatorFacade.ts");
  2893. let CustomCodeHelperObfuscator = class CustomCodeHelperObfuscator {
  2894. constructor(randomGenerator, options) {
  2895. this.randomGenerator = randomGenerator;
  2896. this.options = options;
  2897. }
  2898. obfuscateTemplate(template, additionalOptions = {}) {
  2899. return JavaScriptObfuscatorFacade_1.JavaScriptObfuscator.obfuscate(template, Object.assign(Object.assign(Object.assign({}, NoCustomNodes_1.NO_ADDITIONAL_NODES_PRESET), { identifierNamesGenerator: this.options.identifierNamesGenerator, identifiersDictionary: this.options.identifiersDictionary, numbersToExpressions: this.options.numbersToExpressions, simplify: this.options.simplify, seed: this.randomGenerator.getRawSeed() }), additionalOptions)).getObfuscatedCode();
  2900. }
  2901. };
  2902. CustomCodeHelperObfuscator = __decorate([
  2903. inversify_1.injectable(),
  2904. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  2905. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  2906. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  2907. ], CustomCodeHelperObfuscator);
  2908. exports.CustomCodeHelperObfuscator = CustomCodeHelperObfuscator;
  2909. /***/ }),
  2910. /***/ "./src/custom-code-helpers/calls-controller/CallsControllerFunctionCodeHelper.ts":
  2911. /*!***************************************************************************************!*\
  2912. !*** ./src/custom-code-helpers/calls-controller/CallsControllerFunctionCodeHelper.ts ***!
  2913. \***************************************************************************************/
  2914. /*! unknown exports (runtime-defined) */
  2915. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  2916. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  2917. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  2918. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  2919. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  2920. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  2921. return c > 3 && r && Object.defineProperty(target, key, r), r;
  2922. };
  2923. var __metadata = (this && this.__metadata) || function (k, v) {
  2924. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  2925. };
  2926. var __param = (this && this.__param) || function (paramIndex, decorator) {
  2927. return function (target, key) { decorator(target, key, paramIndex); }
  2928. };
  2929. var _a, _b, _c, _d, _e, _f;
  2930. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2931. exports.CallsControllerFunctionCodeHelper = void 0;
  2932. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  2933. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  2934. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  2935. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  2936. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  2937. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  2938. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  2939. const ObfuscationEvent_1 = __webpack_require__(/*! ../../enums/event-emitters/ObfuscationEvent */ "./src/enums/event-emitters/ObfuscationEvent.ts");
  2940. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  2941. const SingleCallControllerTemplate_1 = __webpack_require__(/*! ../common/templates/SingleCallControllerTemplate */ "./src/custom-code-helpers/common/templates/SingleCallControllerTemplate.ts");
  2942. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  2943. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  2944. let CallsControllerFunctionCodeHelper = class CallsControllerFunctionCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  2945. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options) {
  2946. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  2947. }
  2948. initialize(appendEvent, callsControllerFunctionName) {
  2949. this.appendEvent = appendEvent;
  2950. this.callsControllerFunctionName = callsControllerFunctionName;
  2951. }
  2952. getNodeStructure(codeHelperTemplate) {
  2953. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  2954. }
  2955. getCodeHelperTemplate() {
  2956. if (this.appendEvent === ObfuscationEvent_1.ObfuscationEvent.AfterObfuscation) {
  2957. return this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(SingleCallControllerTemplate_1.SingleCallControllerTemplate(), {
  2958. callControllerFunctionName: this.callsControllerFunctionName
  2959. }));
  2960. }
  2961. return this.customCodeHelperFormatter.formatTemplate(SingleCallControllerTemplate_1.SingleCallControllerTemplate(), {
  2962. callControllerFunctionName: this.callsControllerFunctionName
  2963. });
  2964. }
  2965. };
  2966. __decorate([
  2967. Initializable_1.initializable(),
  2968. __metadata("design:type", String)
  2969. ], CallsControllerFunctionCodeHelper.prototype, "callsControllerFunctionName", void 0);
  2970. __decorate([
  2971. Initializable_1.initializable(),
  2972. __metadata("design:type", typeof (_a = typeof ObfuscationEvent_1.ObfuscationEvent !== "undefined" && ObfuscationEvent_1.ObfuscationEvent) === "function" ? _a : Object)
  2973. ], CallsControllerFunctionCodeHelper.prototype, "appendEvent", void 0);
  2974. CallsControllerFunctionCodeHelper = __decorate([
  2975. inversify_1.injectable(),
  2976. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  2977. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  2978. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  2979. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  2980. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  2981. __metadata("design:paramtypes", [typeof (_b = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _c : Object, typeof (_d = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _d : Object, typeof (_e = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _e : Object, typeof (_f = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _f : Object])
  2982. ], CallsControllerFunctionCodeHelper);
  2983. exports.CallsControllerFunctionCodeHelper = CallsControllerFunctionCodeHelper;
  2984. /***/ }),
  2985. /***/ "./src/custom-code-helpers/common/templates/GlobalVariableNoEvalTemplate.ts":
  2986. /*!**********************************************************************************!*\
  2987. !*** ./src/custom-code-helpers/common/templates/GlobalVariableNoEvalTemplate.ts ***!
  2988. \**********************************************************************************/
  2989. /*! flagged exports */
  2990. /*! export GlobalVariableNoEvalTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  2991. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  2992. /*! other exports [not provided] [no usage info] */
  2993. /*! runtime requirements: __webpack_exports__ */
  2994. /***/ ((__unused_webpack_module, exports) => {
  2995. Object.defineProperty(exports, "__esModule", ({ value: true }));
  2996. exports.GlobalVariableNoEvalTemplate = void 0;
  2997. function GlobalVariableNoEvalTemplate() {
  2998. return `
  2999. const that = (typeof window !== 'undefined'
  3000. ? window
  3001. : (typeof process === 'object' &&
  3002. typeof require === 'function' &&
  3003. typeof global === 'object')
  3004. ? global
  3005. : this);
  3006. `;
  3007. }
  3008. exports.GlobalVariableNoEvalTemplate = GlobalVariableNoEvalTemplate;
  3009. /***/ }),
  3010. /***/ "./src/custom-code-helpers/common/templates/GlobalVariableTemplate1.ts":
  3011. /*!*****************************************************************************!*\
  3012. !*** ./src/custom-code-helpers/common/templates/GlobalVariableTemplate1.ts ***!
  3013. \*****************************************************************************/
  3014. /*! flagged exports */
  3015. /*! export GlobalVariableTemplate1 [provided] [no usage info] [missing usage info prevents renaming] */
  3016. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3017. /*! other exports [not provided] [no usage info] */
  3018. /*! runtime requirements: __webpack_exports__ */
  3019. /***/ ((__unused_webpack_module, exports) => {
  3020. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3021. exports.GlobalVariableTemplate1 = void 0;
  3022. function GlobalVariableTemplate1() {
  3023. return `
  3024. let that;
  3025. try {
  3026. const getGlobal = Function('return (function() ' + '{}.constructor("return this")( )' + ');');
  3027. that = getGlobal();
  3028. } catch (e) {
  3029. that = window;
  3030. }
  3031. `;
  3032. }
  3033. exports.GlobalVariableTemplate1 = GlobalVariableTemplate1;
  3034. /***/ }),
  3035. /***/ "./src/custom-code-helpers/common/templates/GlobalVariableTemplate2.ts":
  3036. /*!*****************************************************************************!*\
  3037. !*** ./src/custom-code-helpers/common/templates/GlobalVariableTemplate2.ts ***!
  3038. \*****************************************************************************/
  3039. /*! flagged exports */
  3040. /*! export GlobalVariableTemplate2 [provided] [no usage info] [missing usage info prevents renaming] */
  3041. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3042. /*! other exports [not provided] [no usage info] */
  3043. /*! runtime requirements: __webpack_exports__ */
  3044. /***/ ((__unused_webpack_module, exports) => {
  3045. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3046. exports.GlobalVariableTemplate2 = void 0;
  3047. function GlobalVariableTemplate2() {
  3048. return `
  3049. const getGlobal = function () {
  3050. let globalObject;
  3051. try {
  3052. globalObject = Function('return (function() ' + '{}.constructor("return this")( )' + ');')();
  3053. } catch (e) {
  3054. globalObject = window;
  3055. }
  3056. return globalObject;
  3057. };
  3058. const that = getGlobal();
  3059. `;
  3060. }
  3061. exports.GlobalVariableTemplate2 = GlobalVariableTemplate2;
  3062. /***/ }),
  3063. /***/ "./src/custom-code-helpers/common/templates/SingleCallControllerTemplate.ts":
  3064. /*!**********************************************************************************!*\
  3065. !*** ./src/custom-code-helpers/common/templates/SingleCallControllerTemplate.ts ***!
  3066. \**********************************************************************************/
  3067. /*! flagged exports */
  3068. /*! export SingleCallControllerTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  3069. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3070. /*! other exports [not provided] [no usage info] */
  3071. /*! runtime requirements: __webpack_exports__ */
  3072. /***/ ((__unused_webpack_module, exports) => {
  3073. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3074. exports.SingleCallControllerTemplate = void 0;
  3075. function SingleCallControllerTemplate() {
  3076. return `
  3077. const {callControllerFunctionName} = (function(){
  3078. let firstCall = true;
  3079. return function (context, fn){
  3080. const rfn = firstCall ? function(){
  3081. if(fn){
  3082. const res = fn.apply(context, arguments);
  3083. fn = null;
  3084. return res;
  3085. }
  3086. } : function(){}
  3087. firstCall = false;
  3088. return rfn;
  3089. }
  3090. })();
  3091. `;
  3092. }
  3093. exports.SingleCallControllerTemplate = SingleCallControllerTemplate;
  3094. /***/ }),
  3095. /***/ "./src/custom-code-helpers/console-output/ConsoleOutputDisableCodeHelper.ts":
  3096. /*!**********************************************************************************!*\
  3097. !*** ./src/custom-code-helpers/console-output/ConsoleOutputDisableCodeHelper.ts ***!
  3098. \**********************************************************************************/
  3099. /*! unknown exports (runtime-defined) */
  3100. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  3101. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  3102. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  3103. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  3104. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  3105. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  3106. return c > 3 && r && Object.defineProperty(target, key, r), r;
  3107. };
  3108. var __metadata = (this && this.__metadata) || function (k, v) {
  3109. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  3110. };
  3111. var __param = (this && this.__param) || function (paramIndex, decorator) {
  3112. return function (target, key) { decorator(target, key, paramIndex); }
  3113. };
  3114. var _a, _b, _c, _d, _e;
  3115. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3116. exports.ConsoleOutputDisableCodeHelper = void 0;
  3117. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  3118. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  3119. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  3120. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  3121. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  3122. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  3123. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  3124. const ObfuscationTarget_1 = __webpack_require__(/*! ../../enums/ObfuscationTarget */ "./src/enums/ObfuscationTarget.ts");
  3125. const ConsoleOutputDisableTemplate_1 = __webpack_require__(/*! ./templates/ConsoleOutputDisableTemplate */ "./src/custom-code-helpers/console-output/templates/ConsoleOutputDisableTemplate.ts");
  3126. const GlobalVariableNoEvalTemplate_1 = __webpack_require__(/*! ../common/templates/GlobalVariableNoEvalTemplate */ "./src/custom-code-helpers/common/templates/GlobalVariableNoEvalTemplate.ts");
  3127. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  3128. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  3129. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  3130. let ConsoleOutputDisableCodeHelper = class ConsoleOutputDisableCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  3131. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options) {
  3132. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  3133. }
  3134. initialize(callsControllerFunctionName, consoleOutputDisableFunctionName) {
  3135. this.callsControllerFunctionName = callsControllerFunctionName;
  3136. this.consoleOutputDisableFunctionName = consoleOutputDisableFunctionName;
  3137. }
  3138. getNodeStructure(codeHelperTemplate) {
  3139. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  3140. }
  3141. getCodeHelperTemplate() {
  3142. const globalVariableTemplate = this.options.target !== ObfuscationTarget_1.ObfuscationTarget.BrowserNoEval
  3143. ? this.getGlobalVariableTemplate()
  3144. : GlobalVariableNoEvalTemplate_1.GlobalVariableNoEvalTemplate();
  3145. return this.customCodeHelperFormatter.formatTemplate(ConsoleOutputDisableTemplate_1.ConsoleOutputDisableTemplate(), {
  3146. callControllerFunctionName: this.callsControllerFunctionName,
  3147. consoleLogDisableFunctionName: this.consoleOutputDisableFunctionName,
  3148. globalVariableTemplate
  3149. });
  3150. }
  3151. };
  3152. __decorate([
  3153. Initializable_1.initializable(),
  3154. __metadata("design:type", String)
  3155. ], ConsoleOutputDisableCodeHelper.prototype, "callsControllerFunctionName", void 0);
  3156. __decorate([
  3157. Initializable_1.initializable(),
  3158. __metadata("design:type", String)
  3159. ], ConsoleOutputDisableCodeHelper.prototype, "consoleOutputDisableFunctionName", void 0);
  3160. ConsoleOutputDisableCodeHelper = __decorate([
  3161. inversify_1.injectable(),
  3162. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  3163. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  3164. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  3165. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  3166. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  3167. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  3168. ], ConsoleOutputDisableCodeHelper);
  3169. exports.ConsoleOutputDisableCodeHelper = ConsoleOutputDisableCodeHelper;
  3170. /***/ }),
  3171. /***/ "./src/custom-code-helpers/console-output/group/ConsoleOutputCodeHelperGroup.ts":
  3172. /*!**************************************************************************************!*\
  3173. !*** ./src/custom-code-helpers/console-output/group/ConsoleOutputCodeHelperGroup.ts ***!
  3174. \**************************************************************************************/
  3175. /*! unknown exports (runtime-defined) */
  3176. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  3177. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  3178. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  3179. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  3180. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  3181. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  3182. return c > 3 && r && Object.defineProperty(target, key, r), r;
  3183. };
  3184. var __metadata = (this && this.__metadata) || function (k, v) {
  3185. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  3186. };
  3187. var __param = (this && this.__param) || function (paramIndex, decorator) {
  3188. return function (target, key) { decorator(target, key, paramIndex); }
  3189. };
  3190. var _a, _b, _c, _d, _e;
  3191. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3192. exports.ConsoleOutputCodeHelperGroup = void 0;
  3193. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  3194. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  3195. const TCustomCodeHelperFactory_1 = __webpack_require__(/*! ../../../types/container/custom-code-helpers/TCustomCodeHelperFactory */ "./src/types/container/custom-code-helpers/TCustomCodeHelperFactory.ts");
  3196. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  3197. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  3198. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  3199. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  3200. const CustomCodeHelper_1 = __webpack_require__(/*! ../../../enums/custom-code-helpers/CustomCodeHelper */ "./src/enums/custom-code-helpers/CustomCodeHelper.ts");
  3201. const ObfuscationEvent_1 = __webpack_require__(/*! ../../../enums/event-emitters/ObfuscationEvent */ "./src/enums/event-emitters/ObfuscationEvent.ts");
  3202. const AbstractCustomCodeHelperGroup_1 = __webpack_require__(/*! ../../AbstractCustomCodeHelperGroup */ "./src/custom-code-helpers/AbstractCustomCodeHelperGroup.ts");
  3203. const NodeAppender_1 = __webpack_require__(/*! ../../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  3204. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  3205. let ConsoleOutputCodeHelperGroup = class ConsoleOutputCodeHelperGroup extends AbstractCustomCodeHelperGroup_1.AbstractCustomCodeHelperGroup {
  3206. constructor(customCodeHelperFactory, identifierNamesGeneratorFactory, randomGenerator, options) {
  3207. super(identifierNamesGeneratorFactory, randomGenerator, options);
  3208. this.appendEvent = ObfuscationEvent_1.ObfuscationEvent.BeforeObfuscation;
  3209. this.customCodeHelperFactory = customCodeHelperFactory;
  3210. }
  3211. appendNodes(nodeWithStatements, callsGraphData) {
  3212. var _a;
  3213. if (!this.options.disableConsoleOutput) {
  3214. return;
  3215. }
  3216. const randomCallsGraphIndex = this.getRandomCallsGraphIndex(callsGraphData.length);
  3217. const consoleOutputDisableHostNode = callsGraphData.length
  3218. ? NodeAppender_1.NodeAppender.getOptimalBlockScope(callsGraphData, randomCallsGraphIndex)
  3219. : nodeWithStatements;
  3220. const callsControllerHostNode = callsGraphData.length
  3221. ? NodeAppender_1.NodeAppender.getOptimalBlockScope(callsGraphData, randomCallsGraphIndex, 1)
  3222. : nodeWithStatements;
  3223. const consoleOutputDisableLexicalScopeNode = (_a = NodeLexicalScopeUtils_1.NodeLexicalScopeUtils
  3224. .getLexicalScope(consoleOutputDisableHostNode)) !== null && _a !== void 0 ? _a : null;
  3225. const consoleOutputDisableFunctionName = consoleOutputDisableLexicalScopeNode
  3226. ? this.identifierNamesGenerator.generate(consoleOutputDisableLexicalScopeNode)
  3227. : this.identifierNamesGenerator.generateNext();
  3228. const callsControllerFunctionName = consoleOutputDisableLexicalScopeNode
  3229. ? this.identifierNamesGenerator.generate(consoleOutputDisableLexicalScopeNode)
  3230. : this.identifierNamesGenerator.generateNext();
  3231. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.ConsoleOutputDisable, (customCodeHelper) => {
  3232. customCodeHelper.initialize(callsControllerFunctionName, consoleOutputDisableFunctionName);
  3233. NodeAppender_1.NodeAppender.prepend(consoleOutputDisableHostNode, customCodeHelper.getNode());
  3234. });
  3235. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction, (customCodeHelper) => {
  3236. customCodeHelper.initialize(this.appendEvent, callsControllerFunctionName);
  3237. NodeAppender_1.NodeAppender.prepend(callsControllerHostNode, customCodeHelper.getNode());
  3238. });
  3239. }
  3240. initialize() {
  3241. this.customCodeHelpers = new Map();
  3242. if (!this.options.disableConsoleOutput) {
  3243. return;
  3244. }
  3245. const consoleOutputDisableExpressionCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.ConsoleOutputDisable);
  3246. const callsControllerFunctionCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction);
  3247. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.ConsoleOutputDisable, consoleOutputDisableExpressionCodeHelper);
  3248. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction, callsControllerFunctionCodeHelper);
  3249. }
  3250. };
  3251. __decorate([
  3252. Initializable_1.initializable(),
  3253. __metadata("design:type", typeof (_a = typeof Map !== "undefined" && Map) === "function" ? _a : Object)
  3254. ], ConsoleOutputCodeHelperGroup.prototype, "customCodeHelpers", void 0);
  3255. ConsoleOutputCodeHelperGroup = __decorate([
  3256. inversify_1.injectable(),
  3257. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICustomCodeHelper)),
  3258. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  3259. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  3260. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  3261. __metadata("design:paramtypes", [typeof (_b = typeof TCustomCodeHelperFactory_1.TCustomCodeHelperFactory !== "undefined" && TCustomCodeHelperFactory_1.TCustomCodeHelperFactory) === "function" ? _b : Object, typeof (_c = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  3262. ], ConsoleOutputCodeHelperGroup);
  3263. exports.ConsoleOutputCodeHelperGroup = ConsoleOutputCodeHelperGroup;
  3264. /***/ }),
  3265. /***/ "./src/custom-code-helpers/console-output/templates/ConsoleOutputDisableTemplate.ts":
  3266. /*!******************************************************************************************!*\
  3267. !*** ./src/custom-code-helpers/console-output/templates/ConsoleOutputDisableTemplate.ts ***!
  3268. \******************************************************************************************/
  3269. /*! flagged exports */
  3270. /*! export ConsoleOutputDisableTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  3271. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3272. /*! other exports [not provided] [no usage info] */
  3273. /*! runtime requirements: __webpack_exports__ */
  3274. /***/ ((__unused_webpack_module, exports) => {
  3275. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3276. exports.ConsoleOutputDisableTemplate = void 0;
  3277. function ConsoleOutputDisableTemplate() {
  3278. return `
  3279. const {consoleLogDisableFunctionName} = {callControllerFunctionName}(this, function () {
  3280. {globalVariableTemplate}
  3281. const consoleObject = (that.console = that.console || {});
  3282. const methods = ['log', 'warn', 'info', 'error', 'exception', 'table', 'trace'];
  3283. for (let index = 0; index < methods.length; index++){
  3284. const func = {callControllerFunctionName}.constructor.prototype.bind({callControllerFunctionName});
  3285. const methodName = methods[index];
  3286. const originalFunction = consoleObject[methodName] || func;
  3287. func.__proto__ = {callControllerFunctionName}.bind({callControllerFunctionName});
  3288. func.toString = originalFunction.toString.bind(originalFunction);
  3289. consoleObject[methodName] = func;
  3290. }
  3291. });
  3292. {consoleLogDisableFunctionName}();
  3293. `;
  3294. }
  3295. exports.ConsoleOutputDisableTemplate = ConsoleOutputDisableTemplate;
  3296. /***/ }),
  3297. /***/ "./src/custom-code-helpers/debug-protection/DebugProtectionFunctionCallCodeHelper.ts":
  3298. /*!*******************************************************************************************!*\
  3299. !*** ./src/custom-code-helpers/debug-protection/DebugProtectionFunctionCallCodeHelper.ts ***!
  3300. \*******************************************************************************************/
  3301. /*! unknown exports (runtime-defined) */
  3302. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  3303. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  3304. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  3305. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  3306. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  3307. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  3308. return c > 3 && r && Object.defineProperty(target, key, r), r;
  3309. };
  3310. var __metadata = (this && this.__metadata) || function (k, v) {
  3311. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  3312. };
  3313. var __param = (this && this.__param) || function (paramIndex, decorator) {
  3314. return function (target, key) { decorator(target, key, paramIndex); }
  3315. };
  3316. var _a, _b, _c, _d, _e;
  3317. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3318. exports.DebugProtectionFunctionCallCodeHelper = void 0;
  3319. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  3320. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  3321. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  3322. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  3323. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  3324. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  3325. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  3326. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  3327. const DebugProtectionFunctionCallTemplate_1 = __webpack_require__(/*! ./templates/debug-protection-function-call/DebugProtectionFunctionCallTemplate */ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function-call/DebugProtectionFunctionCallTemplate.ts");
  3328. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  3329. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  3330. let DebugProtectionFunctionCallCodeHelper = class DebugProtectionFunctionCallCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  3331. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options) {
  3332. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  3333. }
  3334. initialize(debugProtectionFunctionName, callsControllerFunctionName) {
  3335. this.debugProtectionFunctionName = debugProtectionFunctionName;
  3336. this.callsControllerFunctionName = callsControllerFunctionName;
  3337. }
  3338. getNodeStructure(codeHelperTemplate) {
  3339. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  3340. }
  3341. getCodeHelperTemplate() {
  3342. return this.customCodeHelperFormatter.formatTemplate(DebugProtectionFunctionCallTemplate_1.DebugProtectionFunctionCallTemplate(), {
  3343. debugProtectionFunctionName: this.debugProtectionFunctionName,
  3344. callControllerFunctionName: this.callsControllerFunctionName
  3345. });
  3346. }
  3347. };
  3348. __decorate([
  3349. Initializable_1.initializable(),
  3350. __metadata("design:type", String)
  3351. ], DebugProtectionFunctionCallCodeHelper.prototype, "callsControllerFunctionName", void 0);
  3352. __decorate([
  3353. Initializable_1.initializable(),
  3354. __metadata("design:type", String)
  3355. ], DebugProtectionFunctionCallCodeHelper.prototype, "debugProtectionFunctionName", void 0);
  3356. DebugProtectionFunctionCallCodeHelper = __decorate([
  3357. inversify_1.injectable(),
  3358. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  3359. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  3360. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  3361. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  3362. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  3363. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  3364. ], DebugProtectionFunctionCallCodeHelper);
  3365. exports.DebugProtectionFunctionCallCodeHelper = DebugProtectionFunctionCallCodeHelper;
  3366. /***/ }),
  3367. /***/ "./src/custom-code-helpers/debug-protection/DebugProtectionFunctionCodeHelper.ts":
  3368. /*!***************************************************************************************!*\
  3369. !*** ./src/custom-code-helpers/debug-protection/DebugProtectionFunctionCodeHelper.ts ***!
  3370. \***************************************************************************************/
  3371. /*! unknown exports (runtime-defined) */
  3372. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  3373. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  3374. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  3375. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  3376. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  3377. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  3378. return c > 3 && r && Object.defineProperty(target, key, r), r;
  3379. };
  3380. var __metadata = (this && this.__metadata) || function (k, v) {
  3381. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  3382. };
  3383. var __param = (this && this.__param) || function (paramIndex, decorator) {
  3384. return function (target, key) { decorator(target, key, paramIndex); }
  3385. };
  3386. var _a, _b, _c, _d, _e;
  3387. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3388. exports.DebugProtectionFunctionCodeHelper = void 0;
  3389. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  3390. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  3391. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  3392. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  3393. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  3394. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  3395. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  3396. const ObfuscationTarget_1 = __webpack_require__(/*! ../../enums/ObfuscationTarget */ "./src/enums/ObfuscationTarget.ts");
  3397. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  3398. const DebuggerTemplate_1 = __webpack_require__(/*! ./templates/debug-protection-function/DebuggerTemplate */ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplate.ts");
  3399. const DebuggerTemplateNoEval_1 = __webpack_require__(/*! ./templates/debug-protection-function/DebuggerTemplateNoEval */ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplateNoEval.ts");
  3400. const DebugProtectionFunctionTemplate_1 = __webpack_require__(/*! ./templates/debug-protection-function/DebugProtectionFunctionTemplate */ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebugProtectionFunctionTemplate.ts");
  3401. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  3402. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  3403. let DebugProtectionFunctionCodeHelper = class DebugProtectionFunctionCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  3404. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options) {
  3405. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  3406. }
  3407. initialize(debugProtectionFunctionName) {
  3408. this.debugProtectionFunctionName = debugProtectionFunctionName;
  3409. }
  3410. getNodeStructure(codeHelperTemplate) {
  3411. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  3412. }
  3413. getCodeHelperTemplate() {
  3414. const debuggerTemplate = this.options.target !== ObfuscationTarget_1.ObfuscationTarget.BrowserNoEval
  3415. ? DebuggerTemplate_1.DebuggerTemplate()
  3416. : DebuggerTemplateNoEval_1.DebuggerTemplateNoEval();
  3417. return this.customCodeHelperFormatter.formatTemplate(DebugProtectionFunctionTemplate_1.DebugProtectionFunctionTemplate(), {
  3418. debuggerTemplate,
  3419. debugProtectionFunctionName: this.debugProtectionFunctionName
  3420. });
  3421. }
  3422. };
  3423. __decorate([
  3424. Initializable_1.initializable(),
  3425. __metadata("design:type", String)
  3426. ], DebugProtectionFunctionCodeHelper.prototype, "debugProtectionFunctionName", void 0);
  3427. DebugProtectionFunctionCodeHelper = __decorate([
  3428. inversify_1.injectable(),
  3429. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  3430. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  3431. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  3432. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  3433. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  3434. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  3435. ], DebugProtectionFunctionCodeHelper);
  3436. exports.DebugProtectionFunctionCodeHelper = DebugProtectionFunctionCodeHelper;
  3437. /***/ }),
  3438. /***/ "./src/custom-code-helpers/debug-protection/DebugProtectionFunctionIntervalCodeHelper.ts":
  3439. /*!***********************************************************************************************!*\
  3440. !*** ./src/custom-code-helpers/debug-protection/DebugProtectionFunctionIntervalCodeHelper.ts ***!
  3441. \***********************************************************************************************/
  3442. /*! unknown exports (runtime-defined) */
  3443. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  3444. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  3445. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  3446. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  3447. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  3448. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  3449. return c > 3 && r && Object.defineProperty(target, key, r), r;
  3450. };
  3451. var __metadata = (this && this.__metadata) || function (k, v) {
  3452. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  3453. };
  3454. var __param = (this && this.__param) || function (paramIndex, decorator) {
  3455. return function (target, key) { decorator(target, key, paramIndex); }
  3456. };
  3457. var _a, _b, _c, _d, _e;
  3458. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3459. exports.DebugProtectionFunctionIntervalCodeHelper = void 0;
  3460. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  3461. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  3462. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  3463. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  3464. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  3465. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  3466. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  3467. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  3468. const DebugProtectionFunctionIntervalTemplate_1 = __webpack_require__(/*! ./templates/debug-protection-function-interval/DebugProtectionFunctionIntervalTemplate */ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function-interval/DebugProtectionFunctionIntervalTemplate.ts");
  3469. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  3470. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  3471. let DebugProtectionFunctionIntervalCodeHelper = class DebugProtectionFunctionIntervalCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  3472. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options) {
  3473. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  3474. }
  3475. initialize(debugProtectionFunctionName) {
  3476. this.debugProtectionFunctionName = debugProtectionFunctionName;
  3477. }
  3478. getNodeStructure(codeHelperTemplate) {
  3479. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  3480. }
  3481. getCodeHelperTemplate() {
  3482. return this.customCodeHelperFormatter.formatTemplate(DebugProtectionFunctionIntervalTemplate_1.DebugProtectionFunctionIntervalTemplate(), {
  3483. debugProtectionFunctionName: this.debugProtectionFunctionName
  3484. });
  3485. }
  3486. };
  3487. __decorate([
  3488. Initializable_1.initializable(),
  3489. __metadata("design:type", String)
  3490. ], DebugProtectionFunctionIntervalCodeHelper.prototype, "debugProtectionFunctionName", void 0);
  3491. DebugProtectionFunctionIntervalCodeHelper = __decorate([
  3492. inversify_1.injectable(),
  3493. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  3494. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  3495. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  3496. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  3497. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  3498. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  3499. ], DebugProtectionFunctionIntervalCodeHelper);
  3500. exports.DebugProtectionFunctionIntervalCodeHelper = DebugProtectionFunctionIntervalCodeHelper;
  3501. /***/ }),
  3502. /***/ "./src/custom-code-helpers/debug-protection/group/DebugProtectionCodeHelperGroup.ts":
  3503. /*!******************************************************************************************!*\
  3504. !*** ./src/custom-code-helpers/debug-protection/group/DebugProtectionCodeHelperGroup.ts ***!
  3505. \******************************************************************************************/
  3506. /*! unknown exports (runtime-defined) */
  3507. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  3508. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  3509. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  3510. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  3511. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  3512. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  3513. return c > 3 && r && Object.defineProperty(target, key, r), r;
  3514. };
  3515. var __metadata = (this && this.__metadata) || function (k, v) {
  3516. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  3517. };
  3518. var __param = (this && this.__param) || function (paramIndex, decorator) {
  3519. return function (target, key) { decorator(target, key, paramIndex); }
  3520. };
  3521. var _a, _b, _c, _d, _e;
  3522. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3523. exports.DebugProtectionCodeHelperGroup = void 0;
  3524. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  3525. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  3526. const TCustomCodeHelperFactory_1 = __webpack_require__(/*! ../../../types/container/custom-code-helpers/TCustomCodeHelperFactory */ "./src/types/container/custom-code-helpers/TCustomCodeHelperFactory.ts");
  3527. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  3528. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  3529. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  3530. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  3531. const CustomCodeHelper_1 = __webpack_require__(/*! ../../../enums/custom-code-helpers/CustomCodeHelper */ "./src/enums/custom-code-helpers/CustomCodeHelper.ts");
  3532. const ObfuscationEvent_1 = __webpack_require__(/*! ../../../enums/event-emitters/ObfuscationEvent */ "./src/enums/event-emitters/ObfuscationEvent.ts");
  3533. const AbstractCustomCodeHelperGroup_1 = __webpack_require__(/*! ../../AbstractCustomCodeHelperGroup */ "./src/custom-code-helpers/AbstractCustomCodeHelperGroup.ts");
  3534. const NodeAppender_1 = __webpack_require__(/*! ../../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  3535. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  3536. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  3537. let DebugProtectionCodeHelperGroup = class DebugProtectionCodeHelperGroup extends AbstractCustomCodeHelperGroup_1.AbstractCustomCodeHelperGroup {
  3538. constructor(customCodeHelperFactory, identifierNamesGeneratorFactory, randomGenerator, options) {
  3539. super(identifierNamesGeneratorFactory, randomGenerator, options);
  3540. this.appendEvent = ObfuscationEvent_1.ObfuscationEvent.BeforeObfuscation;
  3541. this.customCodeHelperFactory = customCodeHelperFactory;
  3542. }
  3543. appendNodes(nodeWithStatements, callsGraphData) {
  3544. var _a;
  3545. if (!this.options.debugProtection) {
  3546. return;
  3547. }
  3548. const randomCallsGraphIndex = this.getRandomCallsGraphIndex(callsGraphData.length);
  3549. const debugProtectionFunctionCallHostNode = callsGraphData.length
  3550. ? NodeAppender_1.NodeAppender.getOptimalBlockScope(callsGraphData, randomCallsGraphIndex)
  3551. : nodeWithStatements;
  3552. const callsControllerHostNode = callsGraphData.length
  3553. ? NodeAppender_1.NodeAppender.getOptimalBlockScope(callsGraphData, randomCallsGraphIndex, 1)
  3554. : nodeWithStatements;
  3555. const debugProtectionFunctionCallScopeNode = (_a = NodeLexicalScopeUtils_1.NodeLexicalScopeUtils
  3556. .getLexicalScope(debugProtectionFunctionCallHostNode)) !== null && _a !== void 0 ? _a : null;
  3557. const debugProtectionFunctionName = debugProtectionFunctionCallScopeNode
  3558. ? this.identifierNamesGenerator.generate(debugProtectionFunctionCallScopeNode)
  3559. : this.identifierNamesGenerator.generateNext();
  3560. const callsControllerFunctionName = debugProtectionFunctionCallScopeNode
  3561. ? this.identifierNamesGenerator.generate(debugProtectionFunctionCallScopeNode)
  3562. : this.identifierNamesGenerator.generateNext();
  3563. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunctionCall, (customCodeHelper) => {
  3564. customCodeHelper.initialize(debugProtectionFunctionName, callsControllerFunctionName);
  3565. NodeAppender_1.NodeAppender.prepend(debugProtectionFunctionCallHostNode, customCodeHelper.getNode());
  3566. });
  3567. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction, (customCodeHelper) => {
  3568. customCodeHelper.initialize(this.appendEvent, callsControllerFunctionName);
  3569. NodeAppender_1.NodeAppender.prepend(callsControllerHostNode, customCodeHelper.getNode());
  3570. });
  3571. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunction, (customCodeHelper) => {
  3572. customCodeHelper.initialize(debugProtectionFunctionName);
  3573. NodeAppender_1.NodeAppender.append(nodeWithStatements, customCodeHelper.getNode());
  3574. });
  3575. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunctionInterval, (customCodeHelper) => {
  3576. const programBodyLength = NodeGuards_1.NodeGuards.isSwitchCaseNode(nodeWithStatements)
  3577. ? nodeWithStatements.consequent.length
  3578. : nodeWithStatements.body.length;
  3579. const randomIndex = this.randomGenerator.getRandomInteger(0, programBodyLength);
  3580. customCodeHelper.initialize(debugProtectionFunctionName);
  3581. NodeAppender_1.NodeAppender.insertAtIndex(nodeWithStatements, customCodeHelper.getNode(), randomIndex);
  3582. });
  3583. }
  3584. initialize() {
  3585. this.customCodeHelpers = new Map();
  3586. if (!this.options.debugProtection) {
  3587. return;
  3588. }
  3589. const debugProtectionFunctionCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunction);
  3590. const debugProtectionFunctionCallCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunctionCall);
  3591. const debugProtectionFunctionIntervalCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunctionInterval);
  3592. const callsControllerFunctionCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction);
  3593. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunction, debugProtectionFunctionCodeHelper);
  3594. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunctionCall, debugProtectionFunctionCallCodeHelper);
  3595. if (this.options.debugProtectionInterval) {
  3596. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.DebugProtectionFunctionInterval, debugProtectionFunctionIntervalCodeHelper);
  3597. }
  3598. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction, callsControllerFunctionCodeHelper);
  3599. }
  3600. };
  3601. __decorate([
  3602. Initializable_1.initializable(),
  3603. __metadata("design:type", typeof (_a = typeof Map !== "undefined" && Map) === "function" ? _a : Object)
  3604. ], DebugProtectionCodeHelperGroup.prototype, "customCodeHelpers", void 0);
  3605. DebugProtectionCodeHelperGroup = __decorate([
  3606. inversify_1.injectable(),
  3607. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICustomCodeHelper)),
  3608. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  3609. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  3610. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  3611. __metadata("design:paramtypes", [typeof (_b = typeof TCustomCodeHelperFactory_1.TCustomCodeHelperFactory !== "undefined" && TCustomCodeHelperFactory_1.TCustomCodeHelperFactory) === "function" ? _b : Object, typeof (_c = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  3612. ], DebugProtectionCodeHelperGroup);
  3613. exports.DebugProtectionCodeHelperGroup = DebugProtectionCodeHelperGroup;
  3614. /***/ }),
  3615. /***/ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function-call/DebugProtectionFunctionCallTemplate.ts":
  3616. /*!**********************************************************************************************************************************!*\
  3617. !*** ./src/custom-code-helpers/debug-protection/templates/debug-protection-function-call/DebugProtectionFunctionCallTemplate.ts ***!
  3618. \**********************************************************************************************************************************/
  3619. /*! flagged exports */
  3620. /*! export DebugProtectionFunctionCallTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  3621. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3622. /*! other exports [not provided] [no usage info] */
  3623. /*! runtime requirements: __webpack_exports__ */
  3624. /***/ ((__unused_webpack_module, exports) => {
  3625. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3626. exports.DebugProtectionFunctionCallTemplate = void 0;
  3627. function DebugProtectionFunctionCallTemplate() {
  3628. return `
  3629. (function () {
  3630. {callControllerFunctionName}(
  3631. this,
  3632. function () {
  3633. const regExp1 = new RegExp('function *\\\\( *\\\\)');
  3634. const regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');
  3635. const result = {debugProtectionFunctionName}('init');
  3636. if (!regExp1.test(result + 'chain') || !regExp2.test(result + 'input')) {
  3637. result('0');
  3638. } else {
  3639. {debugProtectionFunctionName}();
  3640. }
  3641. }
  3642. )();
  3643. })();
  3644. `;
  3645. }
  3646. exports.DebugProtectionFunctionCallTemplate = DebugProtectionFunctionCallTemplate;
  3647. /***/ }),
  3648. /***/ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function-interval/DebugProtectionFunctionIntervalTemplate.ts":
  3649. /*!******************************************************************************************************************************************!*\
  3650. !*** ./src/custom-code-helpers/debug-protection/templates/debug-protection-function-interval/DebugProtectionFunctionIntervalTemplate.ts ***!
  3651. \******************************************************************************************************************************************/
  3652. /*! flagged exports */
  3653. /*! export DebugProtectionFunctionIntervalTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  3654. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3655. /*! other exports [not provided] [no usage info] */
  3656. /*! runtime requirements: __webpack_exports__ */
  3657. /***/ ((__unused_webpack_module, exports) => {
  3658. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3659. exports.DebugProtectionFunctionIntervalTemplate = void 0;
  3660. function DebugProtectionFunctionIntervalTemplate() {
  3661. return `
  3662. setInterval(function () {
  3663. {debugProtectionFunctionName}();
  3664. }, 4000);
  3665. `;
  3666. }
  3667. exports.DebugProtectionFunctionIntervalTemplate = DebugProtectionFunctionIntervalTemplate;
  3668. /***/ }),
  3669. /***/ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebugProtectionFunctionTemplate.ts":
  3670. /*!*************************************************************************************************************************!*\
  3671. !*** ./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebugProtectionFunctionTemplate.ts ***!
  3672. \*************************************************************************************************************************/
  3673. /*! flagged exports */
  3674. /*! export DebugProtectionFunctionTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  3675. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3676. /*! other exports [not provided] [no usage info] */
  3677. /*! runtime requirements: __webpack_exports__ */
  3678. /***/ ((__unused_webpack_module, exports) => {
  3679. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3680. exports.DebugProtectionFunctionTemplate = void 0;
  3681. function DebugProtectionFunctionTemplate() {
  3682. return `
  3683. function {debugProtectionFunctionName} (ret) {
  3684. function debuggerProtection (counter) {
  3685. {debuggerTemplate}
  3686. debuggerProtection(++counter);
  3687. }
  3688. try {
  3689. if (ret) {
  3690. return debuggerProtection;
  3691. } else {
  3692. debuggerProtection(0);
  3693. }
  3694. } catch (y) {}
  3695. }
  3696. `;
  3697. }
  3698. exports.DebugProtectionFunctionTemplate = DebugProtectionFunctionTemplate;
  3699. /***/ }),
  3700. /***/ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplate.ts":
  3701. /*!**********************************************************************************************************!*\
  3702. !*** ./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplate.ts ***!
  3703. \**********************************************************************************************************/
  3704. /*! flagged exports */
  3705. /*! export DebuggerTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  3706. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3707. /*! other exports [not provided] [no usage info] */
  3708. /*! runtime requirements: __webpack_exports__ */
  3709. /***/ ((__unused_webpack_module, exports) => {
  3710. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3711. exports.DebuggerTemplate = void 0;
  3712. function DebuggerTemplate() {
  3713. return `
  3714. if (typeof counter === 'string') {
  3715. return (function (arg) {}.constructor('while (true) {}').apply('counter'));
  3716. } else {
  3717. if (('' + counter / counter)['length'] !== 1 || counter % 20 === 0) {
  3718. (function () {return true;}.constructor('debu' + 'gger').call('action'));
  3719. } else {
  3720. (function () {return false;}.constructor('debu' + 'gger').apply('stateObject'));
  3721. }
  3722. }
  3723. `;
  3724. }
  3725. exports.DebuggerTemplate = DebuggerTemplate;
  3726. /***/ }),
  3727. /***/ "./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplateNoEval.ts":
  3728. /*!****************************************************************************************************************!*\
  3729. !*** ./src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplateNoEval.ts ***!
  3730. \****************************************************************************************************************/
  3731. /*! flagged exports */
  3732. /*! export DebuggerTemplateNoEval [provided] [no usage info] [missing usage info prevents renaming] */
  3733. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3734. /*! other exports [not provided] [no usage info] */
  3735. /*! runtime requirements: __webpack_exports__ */
  3736. /***/ ((__unused_webpack_module, exports) => {
  3737. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3738. exports.DebuggerTemplateNoEval = void 0;
  3739. function DebuggerTemplateNoEval() {
  3740. return `
  3741. if (typeof counter === 'string') {
  3742. const func = function () {
  3743. while (true) {}
  3744. };
  3745. return func();
  3746. } else {
  3747. if (('' + counter / counter)['length'] !== 1 || counter % 20 === 0) {
  3748. debugger;
  3749. } else {
  3750. debugger;
  3751. }
  3752. }
  3753. `;
  3754. }
  3755. exports.DebuggerTemplateNoEval = DebuggerTemplateNoEval;
  3756. /***/ }),
  3757. /***/ "./src/custom-code-helpers/domain-lock/DomainLockCodeHelper.ts":
  3758. /*!*********************************************************************!*\
  3759. !*** ./src/custom-code-helpers/domain-lock/DomainLockCodeHelper.ts ***!
  3760. \*********************************************************************/
  3761. /*! unknown exports (runtime-defined) */
  3762. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  3763. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  3764. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  3765. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  3766. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  3767. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  3768. return c > 3 && r && Object.defineProperty(target, key, r), r;
  3769. };
  3770. var __metadata = (this && this.__metadata) || function (k, v) {
  3771. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  3772. };
  3773. var __param = (this && this.__param) || function (paramIndex, decorator) {
  3774. return function (target, key) { decorator(target, key, paramIndex); }
  3775. };
  3776. var _a, _b, _c, _d, _e, _f;
  3777. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3778. exports.DomainLockCodeHelper = void 0;
  3779. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  3780. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  3781. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  3782. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  3783. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  3784. const ICryptUtils_1 = __webpack_require__(/*! ../../interfaces/utils/ICryptUtils */ "./src/interfaces/utils/ICryptUtils.ts");
  3785. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  3786. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  3787. const ObfuscationTarget_1 = __webpack_require__(/*! ../../enums/ObfuscationTarget */ "./src/enums/ObfuscationTarget.ts");
  3788. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  3789. const DomainLockTemplate_1 = __webpack_require__(/*! ./templates/DomainLockTemplate */ "./src/custom-code-helpers/domain-lock/templates/DomainLockTemplate.ts");
  3790. const GlobalVariableNoEvalTemplate_1 = __webpack_require__(/*! ../common/templates/GlobalVariableNoEvalTemplate */ "./src/custom-code-helpers/common/templates/GlobalVariableNoEvalTemplate.ts");
  3791. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  3792. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  3793. let DomainLockCodeHelper = class DomainLockCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  3794. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options, cryptUtils) {
  3795. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  3796. this.cryptUtils = cryptUtils;
  3797. }
  3798. initialize(callsControllerFunctionName, domainLockFunctionName) {
  3799. this.callsControllerFunctionName = callsControllerFunctionName;
  3800. this.domainLockFunctionName = domainLockFunctionName;
  3801. }
  3802. getNodeStructure(codeHelperTemplate) {
  3803. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  3804. }
  3805. getCodeHelperTemplate() {
  3806. const domainsString = this.options.domainLock.join(';');
  3807. const [hiddenDomainsString, diff] = this.cryptUtils.hideString(domainsString, domainsString.length * 3);
  3808. const globalVariableTemplate = this.options.target !== ObfuscationTarget_1.ObfuscationTarget.BrowserNoEval
  3809. ? this.getGlobalVariableTemplate()
  3810. : GlobalVariableNoEvalTemplate_1.GlobalVariableNoEvalTemplate();
  3811. return this.customCodeHelperFormatter.formatTemplate(DomainLockTemplate_1.DomainLockTemplate(), {
  3812. callControllerFunctionName: this.callsControllerFunctionName,
  3813. domainLockFunctionName: this.domainLockFunctionName,
  3814. diff,
  3815. domains: hiddenDomainsString,
  3816. globalVariableTemplate
  3817. });
  3818. }
  3819. };
  3820. __decorate([
  3821. Initializable_1.initializable(),
  3822. __metadata("design:type", String)
  3823. ], DomainLockCodeHelper.prototype, "callsControllerFunctionName", void 0);
  3824. __decorate([
  3825. Initializable_1.initializable(),
  3826. __metadata("design:type", String)
  3827. ], DomainLockCodeHelper.prototype, "domainLockFunctionName", void 0);
  3828. DomainLockCodeHelper = __decorate([
  3829. inversify_1.injectable(),
  3830. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  3831. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  3832. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  3833. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  3834. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  3835. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICryptUtils)),
  3836. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object, typeof (_f = typeof ICryptUtils_1.ICryptUtils !== "undefined" && ICryptUtils_1.ICryptUtils) === "function" ? _f : Object])
  3837. ], DomainLockCodeHelper);
  3838. exports.DomainLockCodeHelper = DomainLockCodeHelper;
  3839. /***/ }),
  3840. /***/ "./src/custom-code-helpers/domain-lock/group/DomainLockCustomCodeHelperGroup.ts":
  3841. /*!**************************************************************************************!*\
  3842. !*** ./src/custom-code-helpers/domain-lock/group/DomainLockCustomCodeHelperGroup.ts ***!
  3843. \**************************************************************************************/
  3844. /*! unknown exports (runtime-defined) */
  3845. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  3846. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  3847. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  3848. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  3849. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  3850. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  3851. return c > 3 && r && Object.defineProperty(target, key, r), r;
  3852. };
  3853. var __metadata = (this && this.__metadata) || function (k, v) {
  3854. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  3855. };
  3856. var __param = (this && this.__param) || function (paramIndex, decorator) {
  3857. return function (target, key) { decorator(target, key, paramIndex); }
  3858. };
  3859. var _a, _b, _c, _d, _e;
  3860. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3861. exports.DomainLockCustomCodeHelperGroup = void 0;
  3862. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  3863. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  3864. const TCustomCodeHelperFactory_1 = __webpack_require__(/*! ../../../types/container/custom-code-helpers/TCustomCodeHelperFactory */ "./src/types/container/custom-code-helpers/TCustomCodeHelperFactory.ts");
  3865. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  3866. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  3867. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  3868. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  3869. const CustomCodeHelper_1 = __webpack_require__(/*! ../../../enums/custom-code-helpers/CustomCodeHelper */ "./src/enums/custom-code-helpers/CustomCodeHelper.ts");
  3870. const ObfuscationEvent_1 = __webpack_require__(/*! ../../../enums/event-emitters/ObfuscationEvent */ "./src/enums/event-emitters/ObfuscationEvent.ts");
  3871. const AbstractCustomCodeHelperGroup_1 = __webpack_require__(/*! ../../AbstractCustomCodeHelperGroup */ "./src/custom-code-helpers/AbstractCustomCodeHelperGroup.ts");
  3872. const NodeAppender_1 = __webpack_require__(/*! ../../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  3873. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  3874. let DomainLockCustomCodeHelperGroup = class DomainLockCustomCodeHelperGroup extends AbstractCustomCodeHelperGroup_1.AbstractCustomCodeHelperGroup {
  3875. constructor(customCodeHelperFactory, identifierNamesGeneratorFactory, randomGenerator, options) {
  3876. super(identifierNamesGeneratorFactory, randomGenerator, options);
  3877. this.appendEvent = ObfuscationEvent_1.ObfuscationEvent.BeforeObfuscation;
  3878. this.customCodeHelperFactory = customCodeHelperFactory;
  3879. }
  3880. appendNodes(nodeWithStatements, callsGraphData) {
  3881. var _a;
  3882. if (!this.options.domainLock.length) {
  3883. return;
  3884. }
  3885. const randomCallsGraphIndex = this.getRandomCallsGraphIndex(callsGraphData.length);
  3886. const domainLockFunctionHostNode = callsGraphData.length
  3887. ? NodeAppender_1.NodeAppender.getOptimalBlockScope(callsGraphData, randomCallsGraphIndex)
  3888. : nodeWithStatements;
  3889. const callsControllerHostNode = callsGraphData.length
  3890. ? NodeAppender_1.NodeAppender.getOptimalBlockScope(callsGraphData, randomCallsGraphIndex, 1)
  3891. : nodeWithStatements;
  3892. const domainLockFunctionLexicalScopeNode = (_a = NodeLexicalScopeUtils_1.NodeLexicalScopeUtils
  3893. .getLexicalScope(domainLockFunctionHostNode)) !== null && _a !== void 0 ? _a : null;
  3894. const domainLockFunctionName = domainLockFunctionLexicalScopeNode
  3895. ? this.identifierNamesGenerator.generate(domainLockFunctionLexicalScopeNode)
  3896. : this.identifierNamesGenerator.generateNext();
  3897. const callsControllerFunctionName = domainLockFunctionLexicalScopeNode
  3898. ? this.identifierNamesGenerator.generate(domainLockFunctionLexicalScopeNode)
  3899. : this.identifierNamesGenerator.generateNext();
  3900. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.DomainLock, (customCodeHelper) => {
  3901. customCodeHelper.initialize(callsControllerFunctionName, domainLockFunctionName);
  3902. NodeAppender_1.NodeAppender.prepend(domainLockFunctionHostNode, customCodeHelper.getNode());
  3903. });
  3904. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction, (customCodeHelper) => {
  3905. customCodeHelper.initialize(this.appendEvent, callsControllerFunctionName);
  3906. NodeAppender_1.NodeAppender.prepend(callsControllerHostNode, customCodeHelper.getNode());
  3907. });
  3908. }
  3909. initialize() {
  3910. this.customCodeHelpers = new Map();
  3911. if (!this.options.domainLock.length) {
  3912. return;
  3913. }
  3914. const domainLockCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.DomainLock);
  3915. const callsControllerFunctionCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction);
  3916. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.DomainLock, domainLockCodeHelper);
  3917. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction, callsControllerFunctionCodeHelper);
  3918. }
  3919. };
  3920. __decorate([
  3921. Initializable_1.initializable(),
  3922. __metadata("design:type", typeof (_a = typeof Map !== "undefined" && Map) === "function" ? _a : Object)
  3923. ], DomainLockCustomCodeHelperGroup.prototype, "customCodeHelpers", void 0);
  3924. DomainLockCustomCodeHelperGroup = __decorate([
  3925. inversify_1.injectable(),
  3926. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICustomCodeHelper)),
  3927. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  3928. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  3929. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  3930. __metadata("design:paramtypes", [typeof (_b = typeof TCustomCodeHelperFactory_1.TCustomCodeHelperFactory !== "undefined" && TCustomCodeHelperFactory_1.TCustomCodeHelperFactory) === "function" ? _b : Object, typeof (_c = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  3931. ], DomainLockCustomCodeHelperGroup);
  3932. exports.DomainLockCustomCodeHelperGroup = DomainLockCustomCodeHelperGroup;
  3933. /***/ }),
  3934. /***/ "./src/custom-code-helpers/domain-lock/templates/DomainLockTemplate.ts":
  3935. /*!*****************************************************************************!*\
  3936. !*** ./src/custom-code-helpers/domain-lock/templates/DomainLockTemplate.ts ***!
  3937. \*****************************************************************************/
  3938. /*! flagged exports */
  3939. /*! export DomainLockTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  3940. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  3941. /*! other exports [not provided] [no usage info] */
  3942. /*! runtime requirements: __webpack_exports__ */
  3943. /***/ ((__unused_webpack_module, exports) => {
  3944. Object.defineProperty(exports, "__esModule", ({ value: true }));
  3945. exports.DomainLockTemplate = void 0;
  3946. function DomainLockTemplate() {
  3947. return `
  3948. const {domainLockFunctionName} = {callControllerFunctionName}(this, function () {
  3949. {globalVariableTemplate}
  3950. const func = function () {
  3951. return {
  3952. key: 'item',
  3953. value: 'attribute',
  3954. getAttribute: function () {
  3955. for (let i = 0; i < 1000; i--) {
  3956. const isPositive = i > 0;
  3957. switch (isPositive) {
  3958. case true:
  3959. return this.item + '_' + this.value + '_' + i;
  3960. default:
  3961. this.item + '_' + this.value;
  3962. }
  3963. }
  3964. }()
  3965. };
  3966. };
  3967. const regExp = new RegExp("[{diff}]", "g");
  3968. const domains = "{domains}".replace(regExp, "").split(";");
  3969. let document;
  3970. let domain;
  3971. let location;
  3972. let hostname;
  3973. for (let d in that) {
  3974. if (d.length == 8 && d.charCodeAt(7) == 116 && d.charCodeAt(5) == 101 && d.charCodeAt(3) == 117 && d.charCodeAt(0) == 100) {
  3975. document = d;
  3976. break;
  3977. }
  3978. }
  3979. for (let d1 in that[document]) {
  3980. if (d1.length == 6 && d1.charCodeAt(5) == 110 && d1.charCodeAt(0) == 100) {
  3981. domain = d1;
  3982. break;
  3983. }
  3984. }
  3985. if (!("~" > domain)) {
  3986. for (let d2 in that[document]) {
  3987. if (d2.length == 8 && d2.charCodeAt(7) == 110 && d2.charCodeAt(0) == 108) {
  3988. location = d2;
  3989. break;
  3990. }
  3991. }
  3992. for (let d3 in that[document][location]) {
  3993. if (d3.length == 8 && d3.charCodeAt(7) == 101 && d3.charCodeAt(0) == 104) {
  3994. hostname = d3;
  3995. break;
  3996. }
  3997. }
  3998. }
  3999. if (!document || !that[document]) {
  4000. return;
  4001. }
  4002. const documentDomain = that[document][domain];
  4003. const documentLocationHostName = !!that[document][location] && that[document][location][hostname];
  4004. const currentDomain = documentDomain || documentLocationHostName;
  4005. if (!currentDomain) {
  4006. return;
  4007. }
  4008. let ok = false;
  4009. for (let i = 0; i < domains.length; i++) {
  4010. const domain = domains[i];
  4011. const domainNormalized = domain[0] === String.fromCharCode(46)
  4012. ? domain.slice(1)
  4013. : domain;
  4014. const position = currentDomain.length - domainNormalized.length;
  4015. const lastIndex = currentDomain.indexOf(domainNormalized, position);
  4016. const endsWith = lastIndex !== -1 && lastIndex === position;
  4017. if (endsWith) {
  4018. if (currentDomain.length == domain.length || domain.indexOf(".") === 0) {
  4019. ok = true;
  4020. }
  4021. }
  4022. }
  4023. if (!ok) {
  4024. data;
  4025. } else {
  4026. return;
  4027. }
  4028. func();
  4029. });
  4030. {domainLockFunctionName}();
  4031. `;
  4032. }
  4033. exports.DomainLockTemplate = DomainLockTemplate;
  4034. /***/ }),
  4035. /***/ "./src/custom-code-helpers/self-defending/SelfDefendingUnicodeCodeHelper.ts":
  4036. /*!**********************************************************************************!*\
  4037. !*** ./src/custom-code-helpers/self-defending/SelfDefendingUnicodeCodeHelper.ts ***!
  4038. \**********************************************************************************/
  4039. /*! unknown exports (runtime-defined) */
  4040. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  4041. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  4042. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  4043. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  4044. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  4045. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  4046. return c > 3 && r && Object.defineProperty(target, key, r), r;
  4047. };
  4048. var __metadata = (this && this.__metadata) || function (k, v) {
  4049. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  4050. };
  4051. var __param = (this && this.__param) || function (paramIndex, decorator) {
  4052. return function (target, key) { decorator(target, key, paramIndex); }
  4053. };
  4054. var _a, _b, _c, _d, _e;
  4055. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4056. exports.SelfDefendingUnicodeCodeHelper = void 0;
  4057. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  4058. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  4059. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  4060. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  4061. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  4062. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  4063. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  4064. const ObfuscationTarget_1 = __webpack_require__(/*! ../../enums/ObfuscationTarget */ "./src/enums/ObfuscationTarget.ts");
  4065. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  4066. const SelfDefendingTemplate_1 = __webpack_require__(/*! ./templates/SelfDefendingTemplate */ "./src/custom-code-helpers/self-defending/templates/SelfDefendingTemplate.ts");
  4067. const SelfDefendingNoEvalTemplate_1 = __webpack_require__(/*! ./templates/SelfDefendingNoEvalTemplate */ "./src/custom-code-helpers/self-defending/templates/SelfDefendingNoEvalTemplate.ts");
  4068. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  4069. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  4070. const GlobalVariableNoEvalTemplate_1 = __webpack_require__(/*! ../common/templates/GlobalVariableNoEvalTemplate */ "./src/custom-code-helpers/common/templates/GlobalVariableNoEvalTemplate.ts");
  4071. let SelfDefendingUnicodeCodeHelper = class SelfDefendingUnicodeCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  4072. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options) {
  4073. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  4074. }
  4075. initialize(callsControllerFunctionName, selfDefendingFunctionName) {
  4076. this.callsControllerFunctionName = callsControllerFunctionName;
  4077. this.selfDefendingFunctionName = selfDefendingFunctionName;
  4078. }
  4079. getNodeStructure(codeHelperTemplate) {
  4080. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  4081. }
  4082. getCodeHelperTemplate() {
  4083. const globalVariableTemplate = this.options.target !== ObfuscationTarget_1.ObfuscationTarget.BrowserNoEval
  4084. ? this.getGlobalVariableTemplate()
  4085. : GlobalVariableNoEvalTemplate_1.GlobalVariableNoEvalTemplate();
  4086. const selfDefendingTemplate = this.options.target !== ObfuscationTarget_1.ObfuscationTarget.BrowserNoEval
  4087. ? SelfDefendingTemplate_1.SelfDefendingTemplate()
  4088. : SelfDefendingNoEvalTemplate_1.SelfDefendingNoEvalTemplate();
  4089. return this.customCodeHelperFormatter.formatTemplate(selfDefendingTemplate, {
  4090. callControllerFunctionName: this.callsControllerFunctionName,
  4091. selfDefendingFunctionName: this.selfDefendingFunctionName,
  4092. globalVariableTemplate
  4093. });
  4094. }
  4095. };
  4096. __decorate([
  4097. Initializable_1.initializable(),
  4098. __metadata("design:type", String)
  4099. ], SelfDefendingUnicodeCodeHelper.prototype, "callsControllerFunctionName", void 0);
  4100. __decorate([
  4101. Initializable_1.initializable(),
  4102. __metadata("design:type", String)
  4103. ], SelfDefendingUnicodeCodeHelper.prototype, "selfDefendingFunctionName", void 0);
  4104. SelfDefendingUnicodeCodeHelper = __decorate([
  4105. inversify_1.injectable(),
  4106. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  4107. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  4108. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  4109. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  4110. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  4111. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  4112. ], SelfDefendingUnicodeCodeHelper);
  4113. exports.SelfDefendingUnicodeCodeHelper = SelfDefendingUnicodeCodeHelper;
  4114. /***/ }),
  4115. /***/ "./src/custom-code-helpers/self-defending/group/SelfDefendingCodeHelperGroup.ts":
  4116. /*!**************************************************************************************!*\
  4117. !*** ./src/custom-code-helpers/self-defending/group/SelfDefendingCodeHelperGroup.ts ***!
  4118. \**************************************************************************************/
  4119. /*! unknown exports (runtime-defined) */
  4120. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  4121. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  4122. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  4123. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  4124. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  4125. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  4126. return c > 3 && r && Object.defineProperty(target, key, r), r;
  4127. };
  4128. var __metadata = (this && this.__metadata) || function (k, v) {
  4129. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  4130. };
  4131. var __param = (this && this.__param) || function (paramIndex, decorator) {
  4132. return function (target, key) { decorator(target, key, paramIndex); }
  4133. };
  4134. var _a, _b, _c, _d, _e;
  4135. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4136. exports.SelfDefendingCodeHelperGroup = void 0;
  4137. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  4138. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  4139. const TCustomCodeHelperFactory_1 = __webpack_require__(/*! ../../../types/container/custom-code-helpers/TCustomCodeHelperFactory */ "./src/types/container/custom-code-helpers/TCustomCodeHelperFactory.ts");
  4140. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  4141. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  4142. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  4143. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  4144. const CustomCodeHelper_1 = __webpack_require__(/*! ../../../enums/custom-code-helpers/CustomCodeHelper */ "./src/enums/custom-code-helpers/CustomCodeHelper.ts");
  4145. const ObfuscationEvent_1 = __webpack_require__(/*! ../../../enums/event-emitters/ObfuscationEvent */ "./src/enums/event-emitters/ObfuscationEvent.ts");
  4146. const AbstractCustomCodeHelperGroup_1 = __webpack_require__(/*! ../../AbstractCustomCodeHelperGroup */ "./src/custom-code-helpers/AbstractCustomCodeHelperGroup.ts");
  4147. const NodeAppender_1 = __webpack_require__(/*! ../../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  4148. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  4149. let SelfDefendingCodeHelperGroup = class SelfDefendingCodeHelperGroup extends AbstractCustomCodeHelperGroup_1.AbstractCustomCodeHelperGroup {
  4150. constructor(customCodeHelperFactory, identifierNamesGeneratorFactory, randomGenerator, options) {
  4151. super(identifierNamesGeneratorFactory, randomGenerator, options);
  4152. this.appendEvent = ObfuscationEvent_1.ObfuscationEvent.BeforeObfuscation;
  4153. this.customCodeHelperFactory = customCodeHelperFactory;
  4154. }
  4155. appendNodes(nodeWithStatements, callsGraphData) {
  4156. var _a;
  4157. if (!this.options.selfDefending) {
  4158. return;
  4159. }
  4160. const randomCallsGraphIndex = this.getRandomCallsGraphIndex(callsGraphData.length);
  4161. const selfDefendingFunctionHostNode = callsGraphData.length
  4162. ? NodeAppender_1.NodeAppender.getOptimalBlockScope(callsGraphData, randomCallsGraphIndex)
  4163. : nodeWithStatements;
  4164. const callsControllerHostNode = callsGraphData.length
  4165. ? NodeAppender_1.NodeAppender.getOptimalBlockScope(callsGraphData, randomCallsGraphIndex, 1)
  4166. : nodeWithStatements;
  4167. const selfDefendingFunctionLexicalScopeNode = (_a = NodeLexicalScopeUtils_1.NodeLexicalScopeUtils
  4168. .getLexicalScope(selfDefendingFunctionHostNode)) !== null && _a !== void 0 ? _a : null;
  4169. const selfDefendingFunctionName = selfDefendingFunctionLexicalScopeNode
  4170. ? this.identifierNamesGenerator.generate(selfDefendingFunctionLexicalScopeNode)
  4171. : this.identifierNamesGenerator.generateNext();
  4172. const callsControllerFunctionName = selfDefendingFunctionLexicalScopeNode
  4173. ? this.identifierNamesGenerator.generate(selfDefendingFunctionLexicalScopeNode)
  4174. : this.identifierNamesGenerator.generateNext();
  4175. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.SelfDefendingUnicode, (customCodeHelper) => {
  4176. customCodeHelper.initialize(callsControllerFunctionName, selfDefendingFunctionName);
  4177. NodeAppender_1.NodeAppender.prepend(selfDefendingFunctionHostNode, customCodeHelper.getNode());
  4178. });
  4179. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction, (customCodeHelper) => {
  4180. customCodeHelper.initialize(this.appendEvent, callsControllerFunctionName);
  4181. NodeAppender_1.NodeAppender.prepend(callsControllerHostNode, customCodeHelper.getNode());
  4182. });
  4183. }
  4184. initialize() {
  4185. this.customCodeHelpers = new Map();
  4186. if (!this.options.selfDefending) {
  4187. return;
  4188. }
  4189. const selfDefendingUnicodeCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.SelfDefendingUnicode);
  4190. const callsControllerFunctionCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction);
  4191. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.SelfDefendingUnicode, selfDefendingUnicodeCodeHelper);
  4192. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.CallsControllerFunction, callsControllerFunctionCodeHelper);
  4193. }
  4194. };
  4195. __decorate([
  4196. Initializable_1.initializable(),
  4197. __metadata("design:type", typeof (_a = typeof Map !== "undefined" && Map) === "function" ? _a : Object)
  4198. ], SelfDefendingCodeHelperGroup.prototype, "customCodeHelpers", void 0);
  4199. SelfDefendingCodeHelperGroup = __decorate([
  4200. inversify_1.injectable(),
  4201. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICustomCodeHelper)),
  4202. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  4203. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  4204. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  4205. __metadata("design:paramtypes", [typeof (_b = typeof TCustomCodeHelperFactory_1.TCustomCodeHelperFactory !== "undefined" && TCustomCodeHelperFactory_1.TCustomCodeHelperFactory) === "function" ? _b : Object, typeof (_c = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  4206. ], SelfDefendingCodeHelperGroup);
  4207. exports.SelfDefendingCodeHelperGroup = SelfDefendingCodeHelperGroup;
  4208. /***/ }),
  4209. /***/ "./src/custom-code-helpers/self-defending/templates/SelfDefendingNoEvalTemplate.ts":
  4210. /*!*****************************************************************************************!*\
  4211. !*** ./src/custom-code-helpers/self-defending/templates/SelfDefendingNoEvalTemplate.ts ***!
  4212. \*****************************************************************************************/
  4213. /*! flagged exports */
  4214. /*! export SelfDefendingNoEvalTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  4215. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4216. /*! other exports [not provided] [no usage info] */
  4217. /*! runtime requirements: __webpack_exports__ */
  4218. /***/ ((__unused_webpack_module, exports) => {
  4219. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4220. exports.SelfDefendingNoEvalTemplate = void 0;
  4221. function SelfDefendingNoEvalTemplate() {
  4222. return `
  4223. const {selfDefendingFunctionName} = {callControllerFunctionName}(this, function () {
  4224. {globalVariableTemplate}
  4225. const test = function () {
  4226. const regExp = new that.RegExp('^([^ ]+( +[^ ]+)+)+[^ ]}');
  4227. return !regExp.test({selfDefendingFunctionName});
  4228. };
  4229. return test();
  4230. });
  4231. {selfDefendingFunctionName}();
  4232. `;
  4233. }
  4234. exports.SelfDefendingNoEvalTemplate = SelfDefendingNoEvalTemplate;
  4235. /***/ }),
  4236. /***/ "./src/custom-code-helpers/self-defending/templates/SelfDefendingTemplate.ts":
  4237. /*!***********************************************************************************!*\
  4238. !*** ./src/custom-code-helpers/self-defending/templates/SelfDefendingTemplate.ts ***!
  4239. \***********************************************************************************/
  4240. /*! flagged exports */
  4241. /*! export SelfDefendingTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  4242. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4243. /*! other exports [not provided] [no usage info] */
  4244. /*! runtime requirements: __webpack_exports__ */
  4245. /***/ ((__unused_webpack_module, exports) => {
  4246. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4247. exports.SelfDefendingTemplate = void 0;
  4248. function SelfDefendingTemplate() {
  4249. return `
  4250. const {selfDefendingFunctionName} = {callControllerFunctionName}(this, function () {
  4251. const test = function () {
  4252. const regExp = test
  4253. .constructor('return /" + this + "/')()
  4254. .constructor('^([^ ]+( +[^ ]+)+)+[^ ]}');
  4255. return !regExp.test({selfDefendingFunctionName});
  4256. };
  4257. return test();
  4258. });
  4259. {selfDefendingFunctionName}();
  4260. `;
  4261. }
  4262. exports.SelfDefendingTemplate = SelfDefendingTemplate;
  4263. /***/ }),
  4264. /***/ "./src/custom-code-helpers/string-array/StringArrayCallsWrapperBase64CodeHelper.ts":
  4265. /*!*****************************************************************************************!*\
  4266. !*** ./src/custom-code-helpers/string-array/StringArrayCallsWrapperBase64CodeHelper.ts ***!
  4267. \*****************************************************************************************/
  4268. /*! unknown exports (runtime-defined) */
  4269. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  4270. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  4271. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  4272. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  4273. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  4274. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  4275. return c > 3 && r && Object.defineProperty(target, key, r), r;
  4276. };
  4277. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4278. exports.StringArrayCallsWrapperBase64CodeHelper = void 0;
  4279. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  4280. const AtobTemplate_1 = __webpack_require__(/*! ./templates/string-array-calls-wrapper/AtobTemplate */ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/AtobTemplate.ts");
  4281. const StringArrayBase64DecodeTemplate_1 = __webpack_require__(/*! ./templates/string-array-calls-wrapper/StringArrayBase64DecodeTemplate */ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayBase64DecodeTemplate.ts");
  4282. const StringArrayCallsWrapperCodeHelper_1 = __webpack_require__(/*! ./StringArrayCallsWrapperCodeHelper */ "./src/custom-code-helpers/string-array/StringArrayCallsWrapperCodeHelper.ts");
  4283. let StringArrayCallsWrapperBase64CodeHelper = class StringArrayCallsWrapperBase64CodeHelper extends StringArrayCallsWrapperCodeHelper_1.StringArrayCallsWrapperCodeHelper {
  4284. getDecodeStringArrayTemplate() {
  4285. const atobFunctionName = this.randomGenerator.getRandomString(6);
  4286. const atobPolyfill = this.customCodeHelperFormatter.formatTemplate(AtobTemplate_1.AtobTemplate(), {
  4287. atobFunctionName: atobFunctionName
  4288. });
  4289. const selfDefendingCode = this.getSelfDefendingTemplate();
  4290. return this.customCodeHelperFormatter.formatTemplate(StringArrayBase64DecodeTemplate_1.StringArrayBase64DecodeTemplate(this.randomGenerator), {
  4291. atobPolyfill,
  4292. atobFunctionName,
  4293. selfDefendingCode,
  4294. stringArrayCallsWrapperName: this.stringArrayCallsWrapperName
  4295. });
  4296. }
  4297. };
  4298. StringArrayCallsWrapperBase64CodeHelper = __decorate([
  4299. inversify_1.injectable()
  4300. ], StringArrayCallsWrapperBase64CodeHelper);
  4301. exports.StringArrayCallsWrapperBase64CodeHelper = StringArrayCallsWrapperBase64CodeHelper;
  4302. /***/ }),
  4303. /***/ "./src/custom-code-helpers/string-array/StringArrayCallsWrapperCodeHelper.ts":
  4304. /*!***********************************************************************************!*\
  4305. !*** ./src/custom-code-helpers/string-array/StringArrayCallsWrapperCodeHelper.ts ***!
  4306. \***********************************************************************************/
  4307. /*! unknown exports (runtime-defined) */
  4308. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  4309. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  4310. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  4311. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  4312. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  4313. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  4314. return c > 3 && r && Object.defineProperty(target, key, r), r;
  4315. };
  4316. var __metadata = (this && this.__metadata) || function (k, v) {
  4317. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  4318. };
  4319. var __param = (this && this.__param) || function (paramIndex, decorator) {
  4320. return function (target, key) { decorator(target, key, paramIndex); }
  4321. };
  4322. var _a, _b, _c, _d, _e, _f;
  4323. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4324. exports.StringArrayCallsWrapperCodeHelper = void 0;
  4325. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  4326. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  4327. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  4328. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  4329. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  4330. const IEscapeSequenceEncoder_1 = __webpack_require__(/*! ../../interfaces/utils/IEscapeSequenceEncoder */ "./src/interfaces/utils/IEscapeSequenceEncoder.ts");
  4331. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  4332. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  4333. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  4334. const SelfDefendingTemplate_1 = __webpack_require__(/*! ./templates/string-array-calls-wrapper/SelfDefendingTemplate */ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/SelfDefendingTemplate.ts");
  4335. const StringArrayCallsWrapperTemplate_1 = __webpack_require__(/*! ./templates/string-array-calls-wrapper/StringArrayCallsWrapperTemplate */ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayCallsWrapperTemplate.ts");
  4336. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  4337. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  4338. let StringArrayCallsWrapperCodeHelper = class StringArrayCallsWrapperCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  4339. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options, escapeSequenceEncoder) {
  4340. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  4341. this.escapeSequenceEncoder = escapeSequenceEncoder;
  4342. }
  4343. initialize(stringArrayName, stringArrayCallsWrapperName, indexShiftAmount) {
  4344. this.stringArrayName = stringArrayName;
  4345. this.stringArrayCallsWrapperName = stringArrayCallsWrapperName;
  4346. this.indexShiftAmount = indexShiftAmount;
  4347. }
  4348. getNodeStructure(codeHelperTemplate) {
  4349. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  4350. }
  4351. getCodeHelperTemplate() {
  4352. const decodeCodeHelperTemplate = this.getDecodeStringArrayTemplate();
  4353. const preservedNames = [`^${this.stringArrayName}$`];
  4354. return this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(StringArrayCallsWrapperTemplate_1.StringArrayCallsWrapperTemplate(), {
  4355. decodeCodeHelperTemplate,
  4356. stringArrayCallsWrapperName: this.stringArrayCallsWrapperName,
  4357. stringArrayName: this.stringArrayName,
  4358. indexShiftAmount: this.indexShiftAmount
  4359. }), {
  4360. reservedNames: preservedNames
  4361. });
  4362. }
  4363. getDecodeStringArrayTemplate() {
  4364. return '';
  4365. }
  4366. getSelfDefendingTemplate() {
  4367. if (!this.options.selfDefending) {
  4368. return '';
  4369. }
  4370. return this.customCodeHelperFormatter.formatTemplate(SelfDefendingTemplate_1.SelfDefendingTemplate(this.randomGenerator, this.escapeSequenceEncoder), {
  4371. stringArrayCallsWrapperName: this.stringArrayCallsWrapperName,
  4372. stringArrayName: this.stringArrayName
  4373. });
  4374. }
  4375. };
  4376. __decorate([
  4377. Initializable_1.initializable(),
  4378. __metadata("design:type", Number)
  4379. ], StringArrayCallsWrapperCodeHelper.prototype, "indexShiftAmount", void 0);
  4380. __decorate([
  4381. Initializable_1.initializable(),
  4382. __metadata("design:type", String)
  4383. ], StringArrayCallsWrapperCodeHelper.prototype, "stringArrayName", void 0);
  4384. __decorate([
  4385. Initializable_1.initializable(),
  4386. __metadata("design:type", String)
  4387. ], StringArrayCallsWrapperCodeHelper.prototype, "stringArrayCallsWrapperName", void 0);
  4388. StringArrayCallsWrapperCodeHelper = __decorate([
  4389. inversify_1.injectable(),
  4390. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  4391. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  4392. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  4393. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  4394. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  4395. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IEscapeSequenceEncoder)),
  4396. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object, typeof (_f = typeof IEscapeSequenceEncoder_1.IEscapeSequenceEncoder !== "undefined" && IEscapeSequenceEncoder_1.IEscapeSequenceEncoder) === "function" ? _f : Object])
  4397. ], StringArrayCallsWrapperCodeHelper);
  4398. exports.StringArrayCallsWrapperCodeHelper = StringArrayCallsWrapperCodeHelper;
  4399. /***/ }),
  4400. /***/ "./src/custom-code-helpers/string-array/StringArrayCallsWrapperRc4CodeHelper.ts":
  4401. /*!**************************************************************************************!*\
  4402. !*** ./src/custom-code-helpers/string-array/StringArrayCallsWrapperRc4CodeHelper.ts ***!
  4403. \**************************************************************************************/
  4404. /*! unknown exports (runtime-defined) */
  4405. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  4406. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  4407. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  4408. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  4409. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  4410. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  4411. return c > 3 && r && Object.defineProperty(target, key, r), r;
  4412. };
  4413. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4414. exports.StringArrayCallsWrapperRc4CodeHelper = void 0;
  4415. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  4416. const AtobTemplate_1 = __webpack_require__(/*! ./templates/string-array-calls-wrapper/AtobTemplate */ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/AtobTemplate.ts");
  4417. const Rc4Template_1 = __webpack_require__(/*! ./templates/string-array-calls-wrapper/Rc4Template */ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/Rc4Template.ts");
  4418. const StringArrayRC4DecodeTemplate_1 = __webpack_require__(/*! ./templates/string-array-calls-wrapper/StringArrayRC4DecodeTemplate */ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayRC4DecodeTemplate.ts");
  4419. const StringArrayCallsWrapperCodeHelper_1 = __webpack_require__(/*! ./StringArrayCallsWrapperCodeHelper */ "./src/custom-code-helpers/string-array/StringArrayCallsWrapperCodeHelper.ts");
  4420. let StringArrayCallsWrapperRc4CodeHelper = class StringArrayCallsWrapperRc4CodeHelper extends StringArrayCallsWrapperCodeHelper_1.StringArrayCallsWrapperCodeHelper {
  4421. getDecodeStringArrayTemplate() {
  4422. const atobFunctionName = this.randomGenerator.getRandomString(6);
  4423. const atobPolyfill = this.customCodeHelperFormatter.formatTemplate(AtobTemplate_1.AtobTemplate(), {
  4424. atobFunctionName
  4425. });
  4426. const rc4Polyfill = this.customCodeHelperFormatter.formatTemplate(Rc4Template_1.Rc4Template(), {
  4427. atobFunctionName
  4428. });
  4429. const selfDefendingCode = this.getSelfDefendingTemplate();
  4430. return this.customCodeHelperFormatter.formatTemplate(StringArrayRC4DecodeTemplate_1.StringArrayRC4DecodeTemplate(this.randomGenerator), {
  4431. atobPolyfill,
  4432. rc4Polyfill,
  4433. selfDefendingCode,
  4434. stringArrayCallsWrapperName: this.stringArrayCallsWrapperName
  4435. });
  4436. }
  4437. };
  4438. StringArrayCallsWrapperRc4CodeHelper = __decorate([
  4439. inversify_1.injectable()
  4440. ], StringArrayCallsWrapperRc4CodeHelper);
  4441. exports.StringArrayCallsWrapperRc4CodeHelper = StringArrayCallsWrapperRc4CodeHelper;
  4442. /***/ }),
  4443. /***/ "./src/custom-code-helpers/string-array/StringArrayCodeHelper.ts":
  4444. /*!***********************************************************************!*\
  4445. !*** ./src/custom-code-helpers/string-array/StringArrayCodeHelper.ts ***!
  4446. \***********************************************************************/
  4447. /*! unknown exports (runtime-defined) */
  4448. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  4449. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  4450. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  4451. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  4452. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  4453. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  4454. return c > 3 && r && Object.defineProperty(target, key, r), r;
  4455. };
  4456. var __metadata = (this && this.__metadata) || function (k, v) {
  4457. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  4458. };
  4459. var __param = (this && this.__param) || function (paramIndex, decorator) {
  4460. return function (target, key) { decorator(target, key, paramIndex); }
  4461. };
  4462. var _a, _b, _c, _d, _e, _f;
  4463. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4464. exports.StringArrayCodeHelper = void 0;
  4465. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  4466. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  4467. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  4468. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  4469. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  4470. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  4471. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  4472. const IStringArrayStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  4473. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  4474. const StringArrayTemplate_1 = __webpack_require__(/*! ./templates/string-array/StringArrayTemplate */ "./src/custom-code-helpers/string-array/templates/string-array/StringArrayTemplate.ts");
  4475. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  4476. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  4477. const StringUtils_1 = __webpack_require__(/*! ../../utils/StringUtils */ "./src/utils/StringUtils.ts");
  4478. let StringArrayCodeHelper = class StringArrayCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  4479. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options) {
  4480. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  4481. }
  4482. initialize(stringArrayStorage, stringArrayName) {
  4483. this.stringArrayStorage = stringArrayStorage;
  4484. this.stringArrayName = stringArrayName;
  4485. }
  4486. getNodeStructure(codeHelperTemplate) {
  4487. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  4488. }
  4489. getCodeHelperTemplate() {
  4490. return this.customCodeHelperFormatter.formatTemplate(StringArrayTemplate_1.StringArrayTemplate(), {
  4491. stringArrayName: this.stringArrayName,
  4492. stringArrayStorageItems: this.getEncodedStringArrayStorageItems()
  4493. });
  4494. }
  4495. getEncodedStringArrayStorageItems() {
  4496. return Array
  4497. .from(this.stringArrayStorage.getStorage().values())
  4498. .map((stringArrayStorageItemData) => {
  4499. const escapedEncodedValue = StringUtils_1.StringUtils.escapeJsString(stringArrayStorageItemData.encodedValue);
  4500. return `'${escapedEncodedValue}'`;
  4501. })
  4502. .toString();
  4503. }
  4504. };
  4505. __decorate([
  4506. Initializable_1.initializable(),
  4507. __metadata("design:type", typeof (_a = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _a : Object)
  4508. ], StringArrayCodeHelper.prototype, "stringArrayStorage", void 0);
  4509. __decorate([
  4510. Initializable_1.initializable(),
  4511. __metadata("design:type", String)
  4512. ], StringArrayCodeHelper.prototype, "stringArrayName", void 0);
  4513. StringArrayCodeHelper = __decorate([
  4514. inversify_1.injectable(),
  4515. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  4516. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  4517. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  4518. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  4519. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  4520. __metadata("design:paramtypes", [typeof (_b = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _c : Object, typeof (_d = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _d : Object, typeof (_e = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _e : Object, typeof (_f = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _f : Object])
  4521. ], StringArrayCodeHelper);
  4522. exports.StringArrayCodeHelper = StringArrayCodeHelper;
  4523. /***/ }),
  4524. /***/ "./src/custom-code-helpers/string-array/StringArrayRotateFunctionCodeHelper.ts":
  4525. /*!*************************************************************************************!*\
  4526. !*** ./src/custom-code-helpers/string-array/StringArrayRotateFunctionCodeHelper.ts ***!
  4527. \*************************************************************************************/
  4528. /*! unknown exports (runtime-defined) */
  4529. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  4530. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  4531. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  4532. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  4533. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  4534. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  4535. return c > 3 && r && Object.defineProperty(target, key, r), r;
  4536. };
  4537. var __metadata = (this && this.__metadata) || function (k, v) {
  4538. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  4539. };
  4540. var __param = (this && this.__param) || function (paramIndex, decorator) {
  4541. return function (target, key) { decorator(target, key, paramIndex); }
  4542. };
  4543. var _a, _b, _c, _d, _e, _f;
  4544. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4545. exports.StringArrayRotateFunctionCodeHelper = void 0;
  4546. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  4547. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  4548. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  4549. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  4550. const ICustomCodeHelperObfuscator_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperObfuscator */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts");
  4551. const IEscapeSequenceEncoder_1 = __webpack_require__(/*! ../../interfaces/utils/IEscapeSequenceEncoder */ "./src/interfaces/utils/IEscapeSequenceEncoder.ts");
  4552. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  4553. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  4554. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  4555. const SelfDefendingTemplate_1 = __webpack_require__(/*! ./templates/string-array-rotate-function/SelfDefendingTemplate */ "./src/custom-code-helpers/string-array/templates/string-array-rotate-function/SelfDefendingTemplate.ts");
  4556. const StringArrayRotateFunctionTemplate_1 = __webpack_require__(/*! ./templates/string-array-rotate-function/StringArrayRotateFunctionTemplate */ "./src/custom-code-helpers/string-array/templates/string-array-rotate-function/StringArrayRotateFunctionTemplate.ts");
  4557. const AbstractCustomCodeHelper_1 = __webpack_require__(/*! ../AbstractCustomCodeHelper */ "./src/custom-code-helpers/AbstractCustomCodeHelper.ts");
  4558. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  4559. const NumberUtils_1 = __webpack_require__(/*! ../../utils/NumberUtils */ "./src/utils/NumberUtils.ts");
  4560. let StringArrayRotateFunctionCodeHelper = class StringArrayRotateFunctionCodeHelper extends AbstractCustomCodeHelper_1.AbstractCustomCodeHelper {
  4561. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options, escapeSequenceEncoder) {
  4562. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, customCodeHelperObfuscator, randomGenerator, options);
  4563. this.escapeSequenceEncoder = escapeSequenceEncoder;
  4564. }
  4565. initialize(stringArrayName, stringArrayRotationAmount) {
  4566. this.stringArrayName = stringArrayName;
  4567. this.stringArrayRotationAmount = stringArrayRotationAmount;
  4568. }
  4569. getNodeStructure(codeHelperTemplate) {
  4570. return NodeUtils_1.NodeUtils.convertCodeToStructure(codeHelperTemplate);
  4571. }
  4572. getCodeHelperTemplate() {
  4573. const timesName = this.identifierNamesGenerator.generateNext();
  4574. const whileFunctionName = this.identifierNamesGenerator.generateNext();
  4575. const preservedNames = [`^${this.stringArrayName}$`];
  4576. let code = '';
  4577. if (this.options.selfDefending) {
  4578. code = this.customCodeHelperFormatter.formatTemplate(SelfDefendingTemplate_1.SelfDefendingTemplate(this.escapeSequenceEncoder), {
  4579. timesName,
  4580. whileFunctionName
  4581. });
  4582. }
  4583. else {
  4584. code = `${whileFunctionName}(++${timesName})`;
  4585. }
  4586. return this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(StringArrayRotateFunctionTemplate_1.StringArrayRotateFunctionTemplate(), {
  4587. code,
  4588. timesName,
  4589. whileFunctionName,
  4590. stringArrayName: this.stringArrayName,
  4591. stringArrayRotationAmount: NumberUtils_1.NumberUtils.toHex(this.stringArrayRotationAmount)
  4592. }), {
  4593. reservedNames: preservedNames
  4594. });
  4595. }
  4596. };
  4597. __decorate([
  4598. Initializable_1.initializable(),
  4599. __metadata("design:type", String)
  4600. ], StringArrayRotateFunctionCodeHelper.prototype, "stringArrayName", void 0);
  4601. __decorate([
  4602. Initializable_1.initializable(),
  4603. __metadata("design:type", Number)
  4604. ], StringArrayRotateFunctionCodeHelper.prototype, "stringArrayRotationAmount", void 0);
  4605. StringArrayRotateFunctionCodeHelper = __decorate([
  4606. inversify_1.injectable(),
  4607. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  4608. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  4609. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperObfuscator)),
  4610. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  4611. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  4612. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IEscapeSequenceEncoder)),
  4613. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator !== "undefined" && ICustomCodeHelperObfuscator_1.ICustomCodeHelperObfuscator) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object, typeof (_f = typeof IEscapeSequenceEncoder_1.IEscapeSequenceEncoder !== "undefined" && IEscapeSequenceEncoder_1.IEscapeSequenceEncoder) === "function" ? _f : Object])
  4614. ], StringArrayRotateFunctionCodeHelper);
  4615. exports.StringArrayRotateFunctionCodeHelper = StringArrayRotateFunctionCodeHelper;
  4616. /***/ }),
  4617. /***/ "./src/custom-code-helpers/string-array/group/StringArrayCodeHelperGroup.ts":
  4618. /*!**********************************************************************************!*\
  4619. !*** ./src/custom-code-helpers/string-array/group/StringArrayCodeHelperGroup.ts ***!
  4620. \**********************************************************************************/
  4621. /*! unknown exports (runtime-defined) */
  4622. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  4623. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  4624. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  4625. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  4626. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  4627. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  4628. return c > 3 && r && Object.defineProperty(target, key, r), r;
  4629. };
  4630. var __metadata = (this && this.__metadata) || function (k, v) {
  4631. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  4632. };
  4633. var __param = (this && this.__param) || function (paramIndex, decorator) {
  4634. return function (target, key) { decorator(target, key, paramIndex); }
  4635. };
  4636. var StringArrayCodeHelperGroup_1, _a, _b, _c, _d, _e, _f;
  4637. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4638. exports.StringArrayCodeHelperGroup = void 0;
  4639. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  4640. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  4641. const TCustomCodeHelperFactory_1 = __webpack_require__(/*! ../../../types/container/custom-code-helpers/TCustomCodeHelperFactory */ "./src/types/container/custom-code-helpers/TCustomCodeHelperFactory.ts");
  4642. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  4643. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  4644. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  4645. const IStringArrayStorage_1 = __webpack_require__(/*! ../../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  4646. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  4647. const CustomCodeHelper_1 = __webpack_require__(/*! ../../../enums/custom-code-helpers/CustomCodeHelper */ "./src/enums/custom-code-helpers/CustomCodeHelper.ts");
  4648. const ObfuscationEvent_1 = __webpack_require__(/*! ../../../enums/event-emitters/ObfuscationEvent */ "./src/enums/event-emitters/ObfuscationEvent.ts");
  4649. const StringArrayEncoding_1 = __webpack_require__(/*! ../../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  4650. const AbstractCustomCodeHelperGroup_1 = __webpack_require__(/*! ../../AbstractCustomCodeHelperGroup */ "./src/custom-code-helpers/AbstractCustomCodeHelperGroup.ts");
  4651. const NodeAppender_1 = __webpack_require__(/*! ../../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  4652. let StringArrayCodeHelperGroup = StringArrayCodeHelperGroup_1 = class StringArrayCodeHelperGroup extends AbstractCustomCodeHelperGroup_1.AbstractCustomCodeHelperGroup {
  4653. constructor(customCodeHelperFactory, stringArrayStorage, identifierNamesGeneratorFactory, randomGenerator, options) {
  4654. super(identifierNamesGeneratorFactory, randomGenerator, options);
  4655. this.appendEvent = ObfuscationEvent_1.ObfuscationEvent.AfterObfuscation;
  4656. this.customCodeHelperFactory = customCodeHelperFactory;
  4657. this.stringArrayStorage = stringArrayStorage;
  4658. }
  4659. appendNodes(nodeWithStatements, callsGraphData) {
  4660. if (!this.stringArrayStorage.getLength()) {
  4661. return;
  4662. }
  4663. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.StringArray, (customCodeHelper) => {
  4664. NodeAppender_1.NodeAppender.prepend(nodeWithStatements, customCodeHelper.getNode());
  4665. });
  4666. const stringArrayEncodingsLength = this.options.stringArrayEncoding.length;
  4667. for (let i = 0; i < stringArrayEncodingsLength; i++) {
  4668. const stringArrayEncoding = this.options.stringArrayEncoding[i];
  4669. const stringArrayCallsWrapperCodeHelperName = this.getStringArrayCallsWrapperCodeHelperName(stringArrayEncoding);
  4670. this.appendCustomNodeIfExist(stringArrayCallsWrapperCodeHelperName, (customCodeHelper) => {
  4671. NodeAppender_1.NodeAppender.insertAtIndex(nodeWithStatements, customCodeHelper.getNode(), i + 1);
  4672. });
  4673. }
  4674. this.appendCustomNodeIfExist(CustomCodeHelper_1.CustomCodeHelper.StringArrayRotateFunction, (customCodeHelper) => {
  4675. NodeAppender_1.NodeAppender.insertAtIndex(nodeWithStatements, customCodeHelper.getNode(), 1);
  4676. });
  4677. }
  4678. initialize() {
  4679. this.customCodeHelpers = new Map();
  4680. if (!this.options.stringArray) {
  4681. return;
  4682. }
  4683. const stringArrayCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.StringArray);
  4684. const stringArrayName = this.stringArrayStorage.getStorageName();
  4685. stringArrayCodeHelper.initialize(this.stringArrayStorage, stringArrayName);
  4686. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.StringArray, stringArrayCodeHelper);
  4687. for (const stringArrayEncoding of this.options.stringArrayEncoding) {
  4688. const stringArrayCallsWrapperCodeHelperName = this.getStringArrayCallsWrapperCodeHelperName(stringArrayEncoding);
  4689. const stringArrayCallsWrapperCodeHelper = this.customCodeHelperFactory(stringArrayCallsWrapperCodeHelperName);
  4690. const stringArrayCallsWrapperName = this.stringArrayStorage.getStorageCallsWrapperName(stringArrayEncoding);
  4691. stringArrayCallsWrapperCodeHelper.initialize(stringArrayName, stringArrayCallsWrapperName, this.stringArrayStorage.getIndexShiftAmount());
  4692. this.customCodeHelpers.set(stringArrayCallsWrapperCodeHelperName, stringArrayCallsWrapperCodeHelper);
  4693. }
  4694. const stringArrayRotateFunctionCodeHelper = this.customCodeHelperFactory(CustomCodeHelper_1.CustomCodeHelper.StringArrayRotateFunction);
  4695. stringArrayRotateFunctionCodeHelper.initialize(stringArrayName, this.stringArrayStorage.getRotationAmount());
  4696. if (this.options.rotateStringArray) {
  4697. this.customCodeHelpers.set(CustomCodeHelper_1.CustomCodeHelper.StringArrayRotateFunction, stringArrayRotateFunctionCodeHelper);
  4698. }
  4699. }
  4700. getStringArrayCallsWrapperCodeHelperName(stringArrayEncoding) {
  4701. var _a;
  4702. return (_a = StringArrayCodeHelperGroup_1
  4703. .stringArrayCallsWrapperCodeHelperMap.get(stringArrayEncoding)) !== null && _a !== void 0 ? _a : CustomCodeHelper_1.CustomCodeHelper.StringArrayCallsWrapper;
  4704. }
  4705. };
  4706. StringArrayCodeHelperGroup.stringArrayCallsWrapperCodeHelperMap = new Map([
  4707. [StringArrayEncoding_1.StringArrayEncoding.None, CustomCodeHelper_1.CustomCodeHelper.StringArrayCallsWrapper],
  4708. [StringArrayEncoding_1.StringArrayEncoding.Base64, CustomCodeHelper_1.CustomCodeHelper.StringArrayCallsWrapperBase64],
  4709. [StringArrayEncoding_1.StringArrayEncoding.Rc4, CustomCodeHelper_1.CustomCodeHelper.StringArrayCallsWrapperRc4]
  4710. ]);
  4711. __decorate([
  4712. Initializable_1.initializable(),
  4713. __metadata("design:type", typeof (_a = typeof Map !== "undefined" && Map) === "function" ? _a : Object)
  4714. ], StringArrayCodeHelperGroup.prototype, "customCodeHelpers", void 0);
  4715. StringArrayCodeHelperGroup = StringArrayCodeHelperGroup_1 = __decorate([
  4716. inversify_1.injectable(),
  4717. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICustomCodeHelper)),
  4718. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)),
  4719. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  4720. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  4721. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  4722. __metadata("design:paramtypes", [typeof (_b = typeof TCustomCodeHelperFactory_1.TCustomCodeHelperFactory !== "undefined" && TCustomCodeHelperFactory_1.TCustomCodeHelperFactory) === "function" ? _b : Object, typeof (_c = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _c : Object, typeof (_d = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _d : Object, typeof (_e = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _e : Object, typeof (_f = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _f : Object])
  4723. ], StringArrayCodeHelperGroup);
  4724. exports.StringArrayCodeHelperGroup = StringArrayCodeHelperGroup;
  4725. /***/ }),
  4726. /***/ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/AtobTemplate.ts":
  4727. /*!***************************************************************************************************!*\
  4728. !*** ./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/AtobTemplate.ts ***!
  4729. \***************************************************************************************************/
  4730. /*! flagged exports */
  4731. /*! export AtobTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  4732. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4733. /*! other exports [not provided] [no usage info] */
  4734. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  4735. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  4736. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4737. exports.AtobTemplate = void 0;
  4738. const Base64AlphabetSwapped_1 = __webpack_require__(/*! ../../../../constants/Base64AlphabetSwapped */ "./src/constants/Base64AlphabetSwapped.ts");
  4739. function AtobTemplate() {
  4740. return `
  4741. var {atobFunctionName} = function (input) {
  4742. const chars = '${Base64AlphabetSwapped_1.base64alphabetSwapped}';
  4743. const str = String(input).replace(/=+$/, '');
  4744. let output = '';
  4745. for (
  4746. let bc = 0, bs, buffer, idx = 0;
  4747. buffer = str.charAt(idx++);
  4748. ~buffer && (bs = bc % 4 ? bs * 64 + buffer : buffer,
  4749. bc++ % 4) ? output += String.fromCharCode(255 & bs >> (-2 * bc & 6)) : 0
  4750. ) {
  4751. buffer = chars.indexOf(buffer);
  4752. }
  4753. return output;
  4754. };
  4755. `;
  4756. }
  4757. exports.AtobTemplate = AtobTemplate;
  4758. /***/ }),
  4759. /***/ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/Rc4Template.ts":
  4760. /*!**************************************************************************************************!*\
  4761. !*** ./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/Rc4Template.ts ***!
  4762. \**************************************************************************************************/
  4763. /*! flagged exports */
  4764. /*! export Rc4Template [provided] [no usage info] [missing usage info prevents renaming] */
  4765. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4766. /*! other exports [not provided] [no usage info] */
  4767. /*! runtime requirements: __webpack_exports__ */
  4768. /***/ ((__unused_webpack_module, exports) => {
  4769. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4770. exports.Rc4Template = void 0;
  4771. function Rc4Template() {
  4772. return `
  4773. const rc4 = function (str, key) {
  4774. let s = [], j = 0, x, res = '', newStr = '';
  4775. str = {atobFunctionName}(str);
  4776. for (let k = 0, length = str.length; k < length; k++) {
  4777. newStr += '%' + ('00' + str.charCodeAt(k).toString(16)).slice(-2);
  4778. }
  4779. str = decodeURIComponent(newStr);
  4780. let i;
  4781. for (i = 0; i < 256; i++) {
  4782. s[i] = i;
  4783. }
  4784. for (i = 0; i < 256; i++) {
  4785. j = (j + s[i] + key.charCodeAt(i % key.length)) % 256;
  4786. x = s[i];
  4787. s[i] = s[j];
  4788. s[j] = x;
  4789. }
  4790. i = 0;
  4791. j = 0;
  4792. for (let y = 0; y < str.length; y++) {
  4793. i = (i + 1) % 256;
  4794. j = (j + s[i]) % 256;
  4795. x = s[i];
  4796. s[i] = s[j];
  4797. s[j] = x;
  4798. res += String.fromCharCode(str.charCodeAt(y) ^ s[(s[i] + s[j]) % 256]);
  4799. }
  4800. return res;
  4801. }
  4802. `;
  4803. }
  4804. exports.Rc4Template = Rc4Template;
  4805. /***/ }),
  4806. /***/ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/SelfDefendingTemplate.ts":
  4807. /*!************************************************************************************************************!*\
  4808. !*** ./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/SelfDefendingTemplate.ts ***!
  4809. \************************************************************************************************************/
  4810. /*! flagged exports */
  4811. /*! export SelfDefendingTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  4812. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4813. /*! other exports [not provided] [no usage info] */
  4814. /*! runtime requirements: __webpack_exports__ */
  4815. /***/ ((__unused_webpack_module, exports) => {
  4816. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4817. exports.SelfDefendingTemplate = void 0;
  4818. function SelfDefendingTemplate(randomGenerator, escapeSequenceEncoder) {
  4819. const identifierLength = 6;
  4820. const rc4BytesIdentifier = randomGenerator.getRandomString(identifierLength);
  4821. const statesIdentifier = randomGenerator.getRandomString(identifierLength);
  4822. const newStateIdentifier = randomGenerator.getRandomString(identifierLength);
  4823. const firstStateIdentifier = randomGenerator.getRandomString(identifierLength);
  4824. const secondStateIdentifier = randomGenerator.getRandomString(identifierLength);
  4825. const checkStateIdentifier = randomGenerator.getRandomString(identifierLength);
  4826. const runStateIdentifier = randomGenerator.getRandomString(identifierLength);
  4827. const getStateIdentifier = randomGenerator.getRandomString(identifierLength);
  4828. const stateResultIdentifier = randomGenerator.getRandomString(identifierLength);
  4829. return `
  4830. const StatesClass = function (${rc4BytesIdentifier}) {
  4831. this.${rc4BytesIdentifier} = ${rc4BytesIdentifier};
  4832. this.${statesIdentifier} = [1, 0, 0];
  4833. this.${newStateIdentifier} = function(){return 'newState';};
  4834. this.${firstStateIdentifier} = '${escapeSequenceEncoder.encode('\\w+ *\\(\\) *{\\w+ *', true)}';
  4835. this.${secondStateIdentifier} = '${escapeSequenceEncoder.encode('[\'|"].+[\'|"];? *}', true)}';
  4836. };
  4837. StatesClass.prototype.${checkStateIdentifier} = function () {
  4838. const regExp = new RegExp(this.${firstStateIdentifier} + this.${secondStateIdentifier});
  4839. const expression = regExp.test(this.${newStateIdentifier}.toString())
  4840. ? --this.${statesIdentifier}[1]
  4841. : --this.${statesIdentifier}[0];
  4842. return this.${runStateIdentifier}(expression);
  4843. };
  4844. StatesClass.prototype.${runStateIdentifier} = function (${stateResultIdentifier}) {
  4845. if (!Boolean(~${stateResultIdentifier})) {
  4846. return ${stateResultIdentifier};
  4847. }
  4848. return this.${getStateIdentifier}(this.${rc4BytesIdentifier});
  4849. };
  4850. StatesClass.prototype.${getStateIdentifier} = function (${rc4BytesIdentifier}) {
  4851. for (let i = 0, len = this.${statesIdentifier}.length; i < len; i++) {
  4852. this.${statesIdentifier}.push(Math.round(Math.random()));
  4853. len = this.${statesIdentifier}.length;
  4854. }
  4855. return ${rc4BytesIdentifier}(this.${statesIdentifier}[0]);
  4856. };
  4857. new StatesClass({stringArrayCallsWrapperName}).${checkStateIdentifier}();
  4858. `;
  4859. }
  4860. exports.SelfDefendingTemplate = SelfDefendingTemplate;
  4861. /***/ }),
  4862. /***/ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayBase64DecodeTemplate.ts":
  4863. /*!**********************************************************************************************************************!*\
  4864. !*** ./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayBase64DecodeTemplate.ts ***!
  4865. \**********************************************************************************************************************/
  4866. /*! flagged exports */
  4867. /*! export StringArrayBase64DecodeTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  4868. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4869. /*! other exports [not provided] [no usage info] */
  4870. /*! runtime requirements: __webpack_exports__ */
  4871. /***/ ((__unused_webpack_module, exports) => {
  4872. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4873. exports.StringArrayBase64DecodeTemplate = void 0;
  4874. function StringArrayBase64DecodeTemplate(randomGenerator) {
  4875. const identifierLength = 6;
  4876. const initializedIdentifier = randomGenerator.getRandomString(identifierLength);
  4877. const base64DecodeFunctionIdentifier = randomGenerator.getRandomString(identifierLength);
  4878. const dataIdentifier = randomGenerator.getRandomString(identifierLength);
  4879. return `
  4880. if ({stringArrayCallsWrapperName}.${initializedIdentifier} === undefined) {
  4881. {atobPolyfill}
  4882. {stringArrayCallsWrapperName}.${base64DecodeFunctionIdentifier} = function (str) {
  4883. const string = {atobFunctionName}(str);
  4884. let newStringChars = [];
  4885. for (let i = 0, length = string.length; i < length; i++) {
  4886. newStringChars += '%' + ('00' + string.charCodeAt(i).toString(16)).slice(-2);
  4887. }
  4888. return decodeURIComponent(newStringChars);
  4889. };
  4890. {stringArrayCallsWrapperName}.${dataIdentifier} = {};
  4891. {stringArrayCallsWrapperName}.${initializedIdentifier} = true;
  4892. }
  4893. const cachedValue = {stringArrayCallsWrapperName}.${dataIdentifier}[index];
  4894. if (cachedValue === undefined) {
  4895. {selfDefendingCode}
  4896. value = {stringArrayCallsWrapperName}.${base64DecodeFunctionIdentifier}(value);
  4897. {stringArrayCallsWrapperName}.${dataIdentifier}[index] = value;
  4898. } else {
  4899. value = cachedValue;
  4900. }
  4901. `;
  4902. }
  4903. exports.StringArrayBase64DecodeTemplate = StringArrayBase64DecodeTemplate;
  4904. /***/ }),
  4905. /***/ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayCallsWrapperTemplate.ts":
  4906. /*!**********************************************************************************************************************!*\
  4907. !*** ./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayCallsWrapperTemplate.ts ***!
  4908. \**********************************************************************************************************************/
  4909. /*! flagged exports */
  4910. /*! export StringArrayCallsWrapperTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  4911. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4912. /*! other exports [not provided] [no usage info] */
  4913. /*! runtime requirements: __webpack_exports__ */
  4914. /***/ ((__unused_webpack_module, exports) => {
  4915. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4916. exports.StringArrayCallsWrapperTemplate = void 0;
  4917. function StringArrayCallsWrapperTemplate() {
  4918. return `
  4919. const {stringArrayCallsWrapperName} = function (index, key) {
  4920. index = index - {indexShiftAmount};
  4921. let value = {stringArrayName}[index];
  4922. {decodeCodeHelperTemplate}
  4923. return value;
  4924. };
  4925. `;
  4926. }
  4927. exports.StringArrayCallsWrapperTemplate = StringArrayCallsWrapperTemplate;
  4928. /***/ }),
  4929. /***/ "./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayRC4DecodeTemplate.ts":
  4930. /*!*******************************************************************************************************************!*\
  4931. !*** ./src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayRC4DecodeTemplate.ts ***!
  4932. \*******************************************************************************************************************/
  4933. /*! flagged exports */
  4934. /*! export StringArrayRC4DecodeTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  4935. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4936. /*! other exports [not provided] [no usage info] */
  4937. /*! runtime requirements: __webpack_exports__ */
  4938. /***/ ((__unused_webpack_module, exports) => {
  4939. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4940. exports.StringArrayRC4DecodeTemplate = void 0;
  4941. function StringArrayRC4DecodeTemplate(randomGenerator) {
  4942. const identifierLength = 6;
  4943. const initializedIdentifier = randomGenerator.getRandomString(identifierLength);
  4944. const rc4Identifier = randomGenerator.getRandomString(identifierLength);
  4945. const dataIdentifier = randomGenerator.getRandomString(identifierLength);
  4946. const onceIdentifier = randomGenerator.getRandomString(identifierLength);
  4947. return `
  4948. if ({stringArrayCallsWrapperName}.${initializedIdentifier} === undefined) {
  4949. {atobPolyfill}
  4950. {rc4Polyfill}
  4951. {stringArrayCallsWrapperName}.${rc4Identifier} = rc4;
  4952. {stringArrayCallsWrapperName}.${dataIdentifier} = {};
  4953. {stringArrayCallsWrapperName}.${initializedIdentifier} = true;
  4954. }
  4955. const cachedValue = {stringArrayCallsWrapperName}.${dataIdentifier}[index];
  4956. if (cachedValue === undefined) {
  4957. if ({stringArrayCallsWrapperName}.${onceIdentifier} === undefined) {
  4958. {selfDefendingCode}
  4959. {stringArrayCallsWrapperName}.${onceIdentifier} = true;
  4960. }
  4961. value = {stringArrayCallsWrapperName}.${rc4Identifier}(value, key);
  4962. {stringArrayCallsWrapperName}.${dataIdentifier}[index] = value;
  4963. } else {
  4964. value = cachedValue;
  4965. }
  4966. `;
  4967. }
  4968. exports.StringArrayRC4DecodeTemplate = StringArrayRC4DecodeTemplate;
  4969. /***/ }),
  4970. /***/ "./src/custom-code-helpers/string-array/templates/string-array-rotate-function/SelfDefendingTemplate.ts":
  4971. /*!**************************************************************************************************************!*\
  4972. !*** ./src/custom-code-helpers/string-array/templates/string-array-rotate-function/SelfDefendingTemplate.ts ***!
  4973. \**************************************************************************************************************/
  4974. /*! flagged exports */
  4975. /*! export SelfDefendingTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  4976. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  4977. /*! other exports [not provided] [no usage info] */
  4978. /*! runtime requirements: __webpack_exports__ */
  4979. /***/ ((__unused_webpack_module, exports) => {
  4980. Object.defineProperty(exports, "__esModule", ({ value: true }));
  4981. exports.SelfDefendingTemplate = void 0;
  4982. function SelfDefendingTemplate(escapeSequenceEncoder) {
  4983. return `
  4984. const selfDefendingFunc = function () {
  4985. const object = {
  4986. data: {
  4987. key: 'cookie',
  4988. value: 'timeout'
  4989. },
  4990. setCookie: function (options, name, value, document) {
  4991. document = document || {};
  4992. let updatedCookie = name + "=" + value;
  4993. let i = 0;
  4994. for (let i = 0, len = options.length; i < len; i++) {
  4995. const propName = options[i];
  4996. updatedCookie += "; " + propName;
  4997. const propValue = options[propName];
  4998. options.push(propValue);
  4999. len = options.length;
  5000. if (propValue !== true) {
  5001. updatedCookie += "=" + propValue;
  5002. }
  5003. }
  5004. document['cookie'] = updatedCookie;
  5005. },
  5006. removeCookie: function(){return 'dev';},
  5007. getCookie: function (document, name) {
  5008. document = document || function (value) { return value };
  5009. const matches = document(new RegExp(
  5010. "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
  5011. ));
  5012. const func = function (param1, param2) {
  5013. param1(++param2);
  5014. };
  5015. func({whileFunctionName}, {timesName});
  5016. return matches ? decodeURIComponent(matches[1]) : undefined;
  5017. }
  5018. };
  5019. const test1 = function () {
  5020. const regExp = new RegExp('${escapeSequenceEncoder.encode('\\w+ *\\(\\) *{\\w+ *[\'|"].+[\'|"];? *}', true)}');
  5021. return regExp.test(object.removeCookie.toString());
  5022. };
  5023. object['updateCookie'] = test1;
  5024. let cookie = '';
  5025. const result = object['updateCookie']();
  5026. if (!result) {
  5027. object['setCookie'](['*'], 'counter', 1);
  5028. } else if (result) {
  5029. cookie = object['getCookie'](null, 'counter');
  5030. } else {
  5031. object['removeCookie']();
  5032. }
  5033. };
  5034. selfDefendingFunc();
  5035. `;
  5036. }
  5037. exports.SelfDefendingTemplate = SelfDefendingTemplate;
  5038. /***/ }),
  5039. /***/ "./src/custom-code-helpers/string-array/templates/string-array-rotate-function/StringArrayRotateFunctionTemplate.ts":
  5040. /*!**************************************************************************************************************************!*\
  5041. !*** ./src/custom-code-helpers/string-array/templates/string-array-rotate-function/StringArrayRotateFunctionTemplate.ts ***!
  5042. \**************************************************************************************************************************/
  5043. /*! flagged exports */
  5044. /*! export StringArrayRotateFunctionTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  5045. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  5046. /*! other exports [not provided] [no usage info] */
  5047. /*! runtime requirements: __webpack_exports__ */
  5048. /***/ ((__unused_webpack_module, exports) => {
  5049. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5050. exports.StringArrayRotateFunctionTemplate = void 0;
  5051. function StringArrayRotateFunctionTemplate() {
  5052. return `
  5053. (function (array, {timesName}) {
  5054. const {whileFunctionName} = function (times) {
  5055. while (--times) {
  5056. array['push'](array['shift']());
  5057. }
  5058. };
  5059. {code}
  5060. })({stringArrayName}, {stringArrayRotationAmount});
  5061. `;
  5062. }
  5063. exports.StringArrayRotateFunctionTemplate = StringArrayRotateFunctionTemplate;
  5064. /***/ }),
  5065. /***/ "./src/custom-code-helpers/string-array/templates/string-array/StringArrayTemplate.ts":
  5066. /*!********************************************************************************************!*\
  5067. !*** ./src/custom-code-helpers/string-array/templates/string-array/StringArrayTemplate.ts ***!
  5068. \********************************************************************************************/
  5069. /*! flagged exports */
  5070. /*! export StringArrayTemplate [provided] [no usage info] [missing usage info prevents renaming] */
  5071. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  5072. /*! other exports [not provided] [no usage info] */
  5073. /*! runtime requirements: __webpack_exports__ */
  5074. /***/ ((__unused_webpack_module, exports) => {
  5075. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5076. exports.StringArrayTemplate = void 0;
  5077. function StringArrayTemplate() {
  5078. return `
  5079. const {stringArrayName} = [{stringArrayStorageItems}];
  5080. `;
  5081. }
  5082. exports.StringArrayTemplate = StringArrayTemplate;
  5083. /***/ }),
  5084. /***/ "./src/custom-nodes/AbstractCustomNode.ts":
  5085. /*!************************************************!*\
  5086. !*** ./src/custom-nodes/AbstractCustomNode.ts ***!
  5087. \************************************************/
  5088. /*! unknown exports (runtime-defined) */
  5089. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5090. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5091. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5092. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5093. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5094. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5095. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5096. };
  5097. var __metadata = (this && this.__metadata) || function (k, v) {
  5098. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5099. };
  5100. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5101. return function (target, key) { decorator(target, key, paramIndex); }
  5102. };
  5103. var _a, _b, _c, _d;
  5104. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5105. exports.AbstractCustomNode = void 0;
  5106. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5107. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5108. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5109. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5110. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5111. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5112. let AbstractCustomNode = class AbstractCustomNode {
  5113. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5114. this.cachedNode = null;
  5115. this.identifierNamesGenerator = identifierNamesGeneratorFactory(options);
  5116. this.customCodeHelperFormatter = customCodeHelperFormatter;
  5117. this.randomGenerator = randomGenerator;
  5118. this.options = options;
  5119. }
  5120. getNode() {
  5121. if (!this.cachedNode) {
  5122. this.cachedNode = this.customCodeHelperFormatter.formatStructure(this.getNodeStructure());
  5123. }
  5124. return this.cachedNode;
  5125. }
  5126. };
  5127. AbstractCustomNode = __decorate([
  5128. inversify_1.injectable(),
  5129. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5130. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5131. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5132. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5133. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5134. ], AbstractCustomNode);
  5135. exports.AbstractCustomNode = AbstractCustomNode;
  5136. /***/ }),
  5137. /***/ "./src/custom-nodes/control-flow-flattening-nodes/BinaryExpressionFunctionNode.ts":
  5138. /*!****************************************************************************************!*\
  5139. !*** ./src/custom-nodes/control-flow-flattening-nodes/BinaryExpressionFunctionNode.ts ***!
  5140. \****************************************************************************************/
  5141. /*! unknown exports (runtime-defined) */
  5142. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5143. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5144. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5145. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5146. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5147. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5148. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5149. };
  5150. var __metadata = (this && this.__metadata) || function (k, v) {
  5151. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5152. };
  5153. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5154. return function (target, key) { decorator(target, key, paramIndex); }
  5155. };
  5156. var _a, _b, _c, _d;
  5157. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5158. exports.BinaryExpressionFunctionNode = void 0;
  5159. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5160. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5161. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5162. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5163. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5164. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5165. const AbstractCustomNode_1 = __webpack_require__(/*! ../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5166. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5167. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5168. let BinaryExpressionFunctionNode = class BinaryExpressionFunctionNode extends AbstractCustomNode_1.AbstractCustomNode {
  5169. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5170. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5171. }
  5172. initialize(operator) {
  5173. this.operator = operator;
  5174. }
  5175. getNodeStructure() {
  5176. const structure = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.functionExpressionNode([
  5177. NodeFactory_1.NodeFactory.identifierNode('x'),
  5178. NodeFactory_1.NodeFactory.identifierNode('y')
  5179. ], NodeFactory_1.NodeFactory.blockStatementNode([
  5180. NodeFactory_1.NodeFactory.returnStatementNode(NodeFactory_1.NodeFactory.binaryExpressionNode(this.operator, NodeFactory_1.NodeFactory.identifierNode('x'), NodeFactory_1.NodeFactory.identifierNode('y')))
  5181. ])));
  5182. NodeUtils_1.NodeUtils.parentizeAst(structure);
  5183. return [structure];
  5184. }
  5185. };
  5186. BinaryExpressionFunctionNode = __decorate([
  5187. inversify_1.injectable(),
  5188. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5189. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5190. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5191. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5192. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5193. ], BinaryExpressionFunctionNode);
  5194. exports.BinaryExpressionFunctionNode = BinaryExpressionFunctionNode;
  5195. /***/ }),
  5196. /***/ "./src/custom-nodes/control-flow-flattening-nodes/BlockStatementControlFlowFlatteningNode.ts":
  5197. /*!***************************************************************************************************!*\
  5198. !*** ./src/custom-nodes/control-flow-flattening-nodes/BlockStatementControlFlowFlatteningNode.ts ***!
  5199. \***************************************************************************************************/
  5200. /*! unknown exports (runtime-defined) */
  5201. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5202. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5203. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5204. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5205. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5206. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5207. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5208. };
  5209. var __metadata = (this && this.__metadata) || function (k, v) {
  5210. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5211. };
  5212. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5213. return function (target, key) { decorator(target, key, paramIndex); }
  5214. };
  5215. var _a, _b, _c, _d;
  5216. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5217. exports.BlockStatementControlFlowFlatteningNode = void 0;
  5218. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5219. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5220. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5221. const StringSeparator_1 = __webpack_require__(/*! ../../enums/StringSeparator */ "./src/enums/StringSeparator.ts");
  5222. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5223. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5224. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5225. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  5226. const AbstractCustomNode_1 = __webpack_require__(/*! ../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5227. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5228. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  5229. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5230. let BlockStatementControlFlowFlatteningNode = class BlockStatementControlFlowFlatteningNode extends AbstractCustomNode_1.AbstractCustomNode {
  5231. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5232. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5233. }
  5234. initialize(blockStatementBody, shuffledKeys, originalKeysIndexesInShuffledArray) {
  5235. this.blockStatementBody = blockStatementBody;
  5236. this.shuffledKeys = shuffledKeys;
  5237. this.originalKeysIndexesInShuffledArray = originalKeysIndexesInShuffledArray;
  5238. }
  5239. getNodeStructure() {
  5240. const controllerIdentifierName = this.randomGenerator.getRandomString(6);
  5241. const indexIdentifierName = this.randomGenerator.getRandomString(6);
  5242. const structure = NodeFactory_1.NodeFactory.blockStatementNode([
  5243. NodeFactory_1.NodeFactory.variableDeclarationNode([
  5244. NodeFactory_1.NodeFactory.variableDeclaratorNode(NodeFactory_1.NodeFactory.identifierNode(controllerIdentifierName), NodeFactory_1.NodeFactory.callExpressionNode(NodeFactory_1.NodeFactory.memberExpressionNode(NodeFactory_1.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join(StringSeparator_1.StringSeparator.VerticalLine)), NodeFactory_1.NodeFactory.identifierNode('split')), [
  5245. NodeFactory_1.NodeFactory.literalNode(StringSeparator_1.StringSeparator.VerticalLine)
  5246. ]))
  5247. ], 'const'),
  5248. NodeFactory_1.NodeFactory.variableDeclarationNode([
  5249. NodeFactory_1.NodeFactory.variableDeclaratorNode(NodeFactory_1.NodeFactory.identifierNode(indexIdentifierName), NodeFactory_1.NodeFactory.literalNode(0))
  5250. ], 'let'),
  5251. NodeFactory_1.NodeFactory.whileStatementNode(NodeFactory_1.NodeFactory.literalNode(true), NodeFactory_1.NodeFactory.blockStatementNode([
  5252. NodeFactory_1.NodeFactory.switchStatementNode(NodeFactory_1.NodeFactory.memberExpressionNode(NodeFactory_1.NodeFactory.identifierNode(controllerIdentifierName), NodeFactory_1.NodeFactory.updateExpressionNode('++', NodeFactory_1.NodeFactory.identifierNode(indexIdentifierName)), true), this.shuffledKeys.map((key, index) => {
  5253. const statement = this.blockStatementBody[key];
  5254. const consequent = [statement];
  5255. if (!NodeGuards_1.NodeGuards.isReturnStatementNode(statement)) {
  5256. consequent.push(NodeFactory_1.NodeFactory.continueStatement());
  5257. }
  5258. return NodeFactory_1.NodeFactory.switchCaseNode(NodeFactory_1.NodeFactory.literalNode(String(index)), consequent);
  5259. })),
  5260. NodeFactory_1.NodeFactory.breakStatement()
  5261. ]))
  5262. ]);
  5263. NodeUtils_1.NodeUtils.parentizeAst(structure);
  5264. return [structure];
  5265. }
  5266. };
  5267. __decorate([
  5268. Initializable_1.initializable(),
  5269. __metadata("design:type", Array)
  5270. ], BlockStatementControlFlowFlatteningNode.prototype, "blockStatementBody", void 0);
  5271. __decorate([
  5272. Initializable_1.initializable(),
  5273. __metadata("design:type", Array)
  5274. ], BlockStatementControlFlowFlatteningNode.prototype, "originalKeysIndexesInShuffledArray", void 0);
  5275. __decorate([
  5276. Initializable_1.initializable(),
  5277. __metadata("design:type", Array)
  5278. ], BlockStatementControlFlowFlatteningNode.prototype, "shuffledKeys", void 0);
  5279. BlockStatementControlFlowFlatteningNode = __decorate([
  5280. inversify_1.injectable(),
  5281. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5282. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5283. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5284. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5285. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5286. ], BlockStatementControlFlowFlatteningNode);
  5287. exports.BlockStatementControlFlowFlatteningNode = BlockStatementControlFlowFlatteningNode;
  5288. /***/ }),
  5289. /***/ "./src/custom-nodes/control-flow-flattening-nodes/CallExpressionFunctionNode.ts":
  5290. /*!**************************************************************************************!*\
  5291. !*** ./src/custom-nodes/control-flow-flattening-nodes/CallExpressionFunctionNode.ts ***!
  5292. \**************************************************************************************/
  5293. /*! unknown exports (runtime-defined) */
  5294. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5295. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5296. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5297. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5298. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5299. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5300. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5301. };
  5302. var __metadata = (this && this.__metadata) || function (k, v) {
  5303. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5304. };
  5305. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5306. return function (target, key) { decorator(target, key, paramIndex); }
  5307. };
  5308. var _a, _b, _c, _d;
  5309. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5310. exports.CallExpressionFunctionNode = void 0;
  5311. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5312. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5313. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5314. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5315. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5316. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5317. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  5318. const AbstractCustomNode_1 = __webpack_require__(/*! ../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5319. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5320. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5321. let CallExpressionFunctionNode = class CallExpressionFunctionNode extends AbstractCustomNode_1.AbstractCustomNode {
  5322. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5323. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5324. }
  5325. initialize(expressionArguments) {
  5326. this.expressionArguments = expressionArguments;
  5327. }
  5328. getNodeStructure() {
  5329. const calleeIdentifier = NodeFactory_1.NodeFactory.identifierNode('callee');
  5330. const params = [];
  5331. const argumentsLength = this.expressionArguments.length;
  5332. for (let i = 0; i < argumentsLength; i++) {
  5333. params.push(NodeFactory_1.NodeFactory.identifierNode(`param${i + 1}`));
  5334. }
  5335. const structure = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.functionExpressionNode([
  5336. calleeIdentifier,
  5337. ...params
  5338. ], NodeFactory_1.NodeFactory.blockStatementNode([
  5339. NodeFactory_1.NodeFactory.returnStatementNode(NodeFactory_1.NodeFactory.callExpressionNode(calleeIdentifier, params))
  5340. ])));
  5341. NodeUtils_1.NodeUtils.parentizeAst(structure);
  5342. return [structure];
  5343. }
  5344. };
  5345. __decorate([
  5346. Initializable_1.initializable(),
  5347. __metadata("design:type", Array)
  5348. ], CallExpressionFunctionNode.prototype, "expressionArguments", void 0);
  5349. CallExpressionFunctionNode = __decorate([
  5350. inversify_1.injectable(),
  5351. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5352. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5353. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5354. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5355. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5356. ], CallExpressionFunctionNode);
  5357. exports.CallExpressionFunctionNode = CallExpressionFunctionNode;
  5358. /***/ }),
  5359. /***/ "./src/custom-nodes/control-flow-flattening-nodes/LogicalExpressionFunctionNode.ts":
  5360. /*!*****************************************************************************************!*\
  5361. !*** ./src/custom-nodes/control-flow-flattening-nodes/LogicalExpressionFunctionNode.ts ***!
  5362. \*****************************************************************************************/
  5363. /*! unknown exports (runtime-defined) */
  5364. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5365. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5366. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5367. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5368. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5369. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5370. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5371. };
  5372. var __metadata = (this && this.__metadata) || function (k, v) {
  5373. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5374. };
  5375. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5376. return function (target, key) { decorator(target, key, paramIndex); }
  5377. };
  5378. var _a, _b, _c, _d;
  5379. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5380. exports.LogicalExpressionFunctionNode = void 0;
  5381. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5382. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5383. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5384. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5385. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5386. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5387. const AbstractCustomNode_1 = __webpack_require__(/*! ../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5388. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5389. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5390. let LogicalExpressionFunctionNode = class LogicalExpressionFunctionNode extends AbstractCustomNode_1.AbstractCustomNode {
  5391. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5392. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5393. }
  5394. initialize(operator) {
  5395. this.operator = operator;
  5396. }
  5397. getNodeStructure() {
  5398. const structure = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.functionExpressionNode([
  5399. NodeFactory_1.NodeFactory.identifierNode('x'),
  5400. NodeFactory_1.NodeFactory.identifierNode('y')
  5401. ], NodeFactory_1.NodeFactory.blockStatementNode([
  5402. NodeFactory_1.NodeFactory.returnStatementNode(NodeFactory_1.NodeFactory.logicalExpressionNode(this.operator, NodeFactory_1.NodeFactory.identifierNode('x'), NodeFactory_1.NodeFactory.identifierNode('y')))
  5403. ])));
  5404. NodeUtils_1.NodeUtils.parentizeAst(structure);
  5405. return [structure];
  5406. }
  5407. };
  5408. LogicalExpressionFunctionNode = __decorate([
  5409. inversify_1.injectable(),
  5410. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5411. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5412. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5413. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5414. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5415. ], LogicalExpressionFunctionNode);
  5416. exports.LogicalExpressionFunctionNode = LogicalExpressionFunctionNode;
  5417. /***/ }),
  5418. /***/ "./src/custom-nodes/control-flow-flattening-nodes/StringLiteralNode.ts":
  5419. /*!*****************************************************************************!*\
  5420. !*** ./src/custom-nodes/control-flow-flattening-nodes/StringLiteralNode.ts ***!
  5421. \*****************************************************************************/
  5422. /*! unknown exports (runtime-defined) */
  5423. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5424. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5425. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5426. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5427. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5428. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5429. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5430. };
  5431. var __metadata = (this && this.__metadata) || function (k, v) {
  5432. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5433. };
  5434. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5435. return function (target, key) { decorator(target, key, paramIndex); }
  5436. };
  5437. var _a, _b, _c, _d;
  5438. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5439. exports.StringLiteralNode = void 0;
  5440. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5441. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5442. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5443. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5444. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5445. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5446. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  5447. const AbstractCustomNode_1 = __webpack_require__(/*! ../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5448. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5449. let StringLiteralNode = class StringLiteralNode extends AbstractCustomNode_1.AbstractCustomNode {
  5450. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5451. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5452. }
  5453. initialize(literalValue) {
  5454. this.literalValue = literalValue;
  5455. }
  5456. getNodeStructure() {
  5457. const structure = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.literalNode(this.literalValue));
  5458. return [structure];
  5459. }
  5460. };
  5461. __decorate([
  5462. Initializable_1.initializable(),
  5463. __metadata("design:type", String)
  5464. ], StringLiteralNode.prototype, "literalValue", void 0);
  5465. StringLiteralNode = __decorate([
  5466. inversify_1.injectable(),
  5467. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5468. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5469. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5470. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5471. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5472. ], StringLiteralNode);
  5473. exports.StringLiteralNode = StringLiteralNode;
  5474. /***/ }),
  5475. /***/ "./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/CallExpressionControlFlowStorageCallNode.ts":
  5476. /*!*******************************************************************************************************************************!*\
  5477. !*** ./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/CallExpressionControlFlowStorageCallNode.ts ***!
  5478. \*******************************************************************************************************************************/
  5479. /*! unknown exports (runtime-defined) */
  5480. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5481. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5482. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5483. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5484. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5485. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5486. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5487. };
  5488. var __metadata = (this && this.__metadata) || function (k, v) {
  5489. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5490. };
  5491. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5492. return function (target, key) { decorator(target, key, paramIndex); }
  5493. };
  5494. var _a, _b, _c, _d, _e;
  5495. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5496. exports.CallExpressionControlFlowStorageCallNode = void 0;
  5497. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5498. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5499. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5500. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5501. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5502. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5503. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  5504. const AbstractCustomNode_1 = __webpack_require__(/*! ../../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5505. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5506. const NodeUtils_1 = __webpack_require__(/*! ../../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5507. let CallExpressionControlFlowStorageCallNode = class CallExpressionControlFlowStorageCallNode extends AbstractCustomNode_1.AbstractCustomNode {
  5508. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5509. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5510. }
  5511. initialize(controlFlowStorageName, controlFlowStorageKey, callee, expressionArguments) {
  5512. this.controlFlowStorageName = controlFlowStorageName;
  5513. this.controlFlowStorageKey = controlFlowStorageKey;
  5514. this.callee = callee;
  5515. this.expressionArguments = expressionArguments;
  5516. }
  5517. getNodeStructure() {
  5518. const structure = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.callExpressionNode(NodeFactory_1.NodeFactory.memberExpressionNode(NodeFactory_1.NodeFactory.identifierNode(this.controlFlowStorageName), NodeFactory_1.NodeFactory.identifierNode(this.controlFlowStorageKey)), [
  5519. this.callee,
  5520. ...this.expressionArguments
  5521. ]));
  5522. NodeUtils_1.NodeUtils.parentizeAst(structure);
  5523. return [structure];
  5524. }
  5525. };
  5526. __decorate([
  5527. Initializable_1.initializable(),
  5528. __metadata("design:type", typeof (_a = typeof ESTree !== "undefined" && ESTree.Expression) === "function" ? _a : Object)
  5529. ], CallExpressionControlFlowStorageCallNode.prototype, "callee", void 0);
  5530. __decorate([
  5531. Initializable_1.initializable(),
  5532. __metadata("design:type", String)
  5533. ], CallExpressionControlFlowStorageCallNode.prototype, "controlFlowStorageKey", void 0);
  5534. __decorate([
  5535. Initializable_1.initializable(),
  5536. __metadata("design:type", String)
  5537. ], CallExpressionControlFlowStorageCallNode.prototype, "controlFlowStorageName", void 0);
  5538. __decorate([
  5539. Initializable_1.initializable(),
  5540. __metadata("design:type", Array)
  5541. ], CallExpressionControlFlowStorageCallNode.prototype, "expressionArguments", void 0);
  5542. CallExpressionControlFlowStorageCallNode = __decorate([
  5543. inversify_1.injectable(),
  5544. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5545. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5546. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5547. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5548. __metadata("design:paramtypes", [typeof (_b = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  5549. ], CallExpressionControlFlowStorageCallNode);
  5550. exports.CallExpressionControlFlowStorageCallNode = CallExpressionControlFlowStorageCallNode;
  5551. /***/ }),
  5552. /***/ "./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ControlFlowStorageNode.ts":
  5553. /*!*************************************************************************************************************!*\
  5554. !*** ./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ControlFlowStorageNode.ts ***!
  5555. \*************************************************************************************************************/
  5556. /*! unknown exports (runtime-defined) */
  5557. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5558. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5559. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5560. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5561. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5562. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5563. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5564. };
  5565. var __metadata = (this && this.__metadata) || function (k, v) {
  5566. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5567. };
  5568. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5569. return function (target, key) { decorator(target, key, paramIndex); }
  5570. };
  5571. var _a, _b, _c, _d, _e;
  5572. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5573. exports.ControlFlowStorageNode = void 0;
  5574. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5575. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5576. const TControlFlowStorage_1 = __webpack_require__(/*! ../../../types/storages/TControlFlowStorage */ "./src/types/storages/TControlFlowStorage.ts");
  5577. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5578. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5579. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5580. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5581. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  5582. const AbstractCustomNode_1 = __webpack_require__(/*! ../../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5583. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5584. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  5585. const NodeUtils_1 = __webpack_require__(/*! ../../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5586. let ControlFlowStorageNode = class ControlFlowStorageNode extends AbstractCustomNode_1.AbstractCustomNode {
  5587. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5588. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5589. }
  5590. initialize(controlFlowStorage) {
  5591. this.controlFlowStorage = controlFlowStorage;
  5592. }
  5593. getNodeStructure() {
  5594. const propertyNodes = Array
  5595. .from(this.controlFlowStorage.getStorage())
  5596. .map(([key, value]) => {
  5597. const node = value.getNode()[0];
  5598. if (!NodeGuards_1.NodeGuards.isExpressionStatementNode(node)) {
  5599. throw new Error('Function node for control flow storage object should be passed inside the `ExpressionStatement` node!');
  5600. }
  5601. return NodeFactory_1.NodeFactory.propertyNode(NodeFactory_1.NodeFactory.identifierNode(key), node.expression);
  5602. });
  5603. let structure = NodeFactory_1.NodeFactory.variableDeclarationNode([
  5604. NodeFactory_1.NodeFactory.variableDeclaratorNode(NodeFactory_1.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()), NodeFactory_1.NodeFactory.objectExpressionNode(propertyNodes))
  5605. ], 'const');
  5606. structure = NodeUtils_1.NodeUtils.parentizeAst(structure);
  5607. return [structure];
  5608. }
  5609. };
  5610. __decorate([
  5611. Initializable_1.initializable(),
  5612. __metadata("design:type", typeof (_a = typeof TControlFlowStorage_1.TControlFlowStorage !== "undefined" && TControlFlowStorage_1.TControlFlowStorage) === "function" ? _a : Object)
  5613. ], ControlFlowStorageNode.prototype, "controlFlowStorage", void 0);
  5614. ControlFlowStorageNode = __decorate([
  5615. inversify_1.injectable(),
  5616. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5617. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5618. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5619. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5620. __metadata("design:paramtypes", [typeof (_b = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  5621. ], ControlFlowStorageNode);
  5622. exports.ControlFlowStorageNode = ControlFlowStorageNode;
  5623. /***/ }),
  5624. /***/ "./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ExpressionWithOperatorControlFlowStorageCallNode.ts":
  5625. /*!***************************************************************************************************************************************!*\
  5626. !*** ./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ExpressionWithOperatorControlFlowStorageCallNode.ts ***!
  5627. \***************************************************************************************************************************************/
  5628. /*! unknown exports (runtime-defined) */
  5629. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5630. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5631. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5632. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5633. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5634. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5635. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5636. };
  5637. var __metadata = (this && this.__metadata) || function (k, v) {
  5638. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5639. };
  5640. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5641. return function (target, key) { decorator(target, key, paramIndex); }
  5642. };
  5643. var _a, _b, _c, _d;
  5644. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5645. exports.ExpressionWithOperatorControlFlowStorageCallNode = void 0;
  5646. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5647. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5648. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5649. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5650. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5651. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5652. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  5653. const AbstractCustomNode_1 = __webpack_require__(/*! ../../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5654. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5655. const NodeUtils_1 = __webpack_require__(/*! ../../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5656. let ExpressionWithOperatorControlFlowStorageCallNode = class ExpressionWithOperatorControlFlowStorageCallNode extends AbstractCustomNode_1.AbstractCustomNode {
  5657. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5658. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5659. }
  5660. initialize(controlFlowStorageName, controlFlowStorageKey, leftValue, rightValue) {
  5661. this.controlFlowStorageName = controlFlowStorageName;
  5662. this.controlFlowStorageKey = controlFlowStorageKey;
  5663. this.leftValue = leftValue;
  5664. this.rightValue = rightValue;
  5665. }
  5666. getNodeStructure() {
  5667. const structure = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.callExpressionNode(NodeFactory_1.NodeFactory.memberExpressionNode(NodeFactory_1.NodeFactory.identifierNode(this.controlFlowStorageName), NodeFactory_1.NodeFactory.identifierNode(this.controlFlowStorageKey)), [
  5668. this.leftValue,
  5669. this.rightValue
  5670. ]));
  5671. NodeUtils_1.NodeUtils.parentizeAst(structure);
  5672. return [structure];
  5673. }
  5674. };
  5675. __decorate([
  5676. Initializable_1.initializable(),
  5677. __metadata("design:type", String)
  5678. ], ExpressionWithOperatorControlFlowStorageCallNode.prototype, "controlFlowStorageKey", void 0);
  5679. __decorate([
  5680. Initializable_1.initializable(),
  5681. __metadata("design:type", String)
  5682. ], ExpressionWithOperatorControlFlowStorageCallNode.prototype, "controlFlowStorageName", void 0);
  5683. ExpressionWithOperatorControlFlowStorageCallNode = __decorate([
  5684. inversify_1.injectable(),
  5685. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5686. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5687. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5688. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5689. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5690. ], ExpressionWithOperatorControlFlowStorageCallNode);
  5691. exports.ExpressionWithOperatorControlFlowStorageCallNode = ExpressionWithOperatorControlFlowStorageCallNode;
  5692. /***/ }),
  5693. /***/ "./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/StringLiteralControlFlowStorageCallNode.ts":
  5694. /*!******************************************************************************************************************************!*\
  5695. !*** ./src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/StringLiteralControlFlowStorageCallNode.ts ***!
  5696. \******************************************************************************************************************************/
  5697. /*! unknown exports (runtime-defined) */
  5698. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5699. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5700. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5701. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5702. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5703. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5704. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5705. };
  5706. var __metadata = (this && this.__metadata) || function (k, v) {
  5707. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5708. };
  5709. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5710. return function (target, key) { decorator(target, key, paramIndex); }
  5711. };
  5712. var _a, _b, _c, _d;
  5713. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5714. exports.StringLiteralControlFlowStorageCallNode = void 0;
  5715. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5716. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5717. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5718. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5719. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5720. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5721. const Initializable_1 = __webpack_require__(/*! ../../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  5722. const AbstractCustomNode_1 = __webpack_require__(/*! ../../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5723. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5724. const NodeUtils_1 = __webpack_require__(/*! ../../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5725. let StringLiteralControlFlowStorageCallNode = class StringLiteralControlFlowStorageCallNode extends AbstractCustomNode_1.AbstractCustomNode {
  5726. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5727. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5728. }
  5729. initialize(controlFlowStorageName, controlFlowStorageKey) {
  5730. this.controlFlowStorageName = controlFlowStorageName;
  5731. this.controlFlowStorageKey = controlFlowStorageKey;
  5732. }
  5733. getNodeStructure() {
  5734. const structure = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.memberExpressionNode(NodeFactory_1.NodeFactory.identifierNode(this.controlFlowStorageName), NodeFactory_1.NodeFactory.identifierNode(this.controlFlowStorageKey)));
  5735. NodeUtils_1.NodeUtils.parentizeAst(structure);
  5736. return [structure];
  5737. }
  5738. };
  5739. __decorate([
  5740. Initializable_1.initializable(),
  5741. __metadata("design:type", String)
  5742. ], StringLiteralControlFlowStorageCallNode.prototype, "controlFlowStorageKey", void 0);
  5743. __decorate([
  5744. Initializable_1.initializable(),
  5745. __metadata("design:type", String)
  5746. ], StringLiteralControlFlowStorageCallNode.prototype, "controlFlowStorageName", void 0);
  5747. StringLiteralControlFlowStorageCallNode = __decorate([
  5748. inversify_1.injectable(),
  5749. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5750. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5751. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5752. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5753. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5754. ], StringLiteralControlFlowStorageCallNode);
  5755. exports.StringLiteralControlFlowStorageCallNode = StringLiteralControlFlowStorageCallNode;
  5756. /***/ }),
  5757. /***/ "./src/custom-nodes/dead-code-injection-nodes/BlockStatementDeadCodeInjectionNode.ts":
  5758. /*!*******************************************************************************************!*\
  5759. !*** ./src/custom-nodes/dead-code-injection-nodes/BlockStatementDeadCodeInjectionNode.ts ***!
  5760. \*******************************************************************************************/
  5761. /*! unknown exports (runtime-defined) */
  5762. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5763. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5764. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5765. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5766. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5767. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5768. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5769. };
  5770. var __metadata = (this && this.__metadata) || function (k, v) {
  5771. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5772. };
  5773. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5774. return function (target, key) { decorator(target, key, paramIndex); }
  5775. };
  5776. var _a, _b, _c, _d;
  5777. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5778. exports.BlockStatementDeadCodeInjectionNode = void 0;
  5779. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5780. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5781. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5782. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5783. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5784. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5785. const AbstractCustomNode_1 = __webpack_require__(/*! ../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5786. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5787. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5788. let BlockStatementDeadCodeInjectionNode = class BlockStatementDeadCodeInjectionNode extends AbstractCustomNode_1.AbstractCustomNode {
  5789. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5790. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5791. }
  5792. initialize(blockStatementNode, deadCodeInjectionRootAstHostNode) {
  5793. this.blockStatementNode = blockStatementNode;
  5794. this.deadCodeInjectionRootAstHostNode = deadCodeInjectionRootAstHostNode;
  5795. }
  5796. getNode() {
  5797. return this.getNodeStructure();
  5798. }
  5799. getNodeStructure() {
  5800. const random1 = this.randomGenerator.getMathRandom() > 0.5;
  5801. const random2 = this.randomGenerator.getMathRandom() > 0.5;
  5802. const operator = random1 ? '===' : '!==';
  5803. const leftString = this.randomGenerator.getRandomString(5);
  5804. const rightString = random2 ? leftString : this.randomGenerator.getRandomString(5);
  5805. const [consequent, alternate] = random1 === random2
  5806. ? [this.blockStatementNode, this.deadCodeInjectionRootAstHostNode]
  5807. : [this.deadCodeInjectionRootAstHostNode, this.blockStatementNode];
  5808. const structure = NodeFactory_1.NodeFactory.blockStatementNode([
  5809. NodeFactory_1.NodeFactory.ifStatementNode(NodeFactory_1.NodeFactory.binaryExpressionNode(operator, NodeFactory_1.NodeFactory.literalNode(leftString), NodeFactory_1.NodeFactory.literalNode(rightString)), consequent, alternate)
  5810. ]);
  5811. NodeUtils_1.NodeUtils.parentizeAst(structure);
  5812. return [structure];
  5813. }
  5814. };
  5815. BlockStatementDeadCodeInjectionNode = __decorate([
  5816. inversify_1.injectable(),
  5817. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5818. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5819. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5820. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5821. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5822. ], BlockStatementDeadCodeInjectionNode);
  5823. exports.BlockStatementDeadCodeInjectionNode = BlockStatementDeadCodeInjectionNode;
  5824. /***/ }),
  5825. /***/ "./src/custom-nodes/object-expression-keys-transformer-nodes/ObjectExpressionVariableDeclarationHostNode.ts":
  5826. /*!******************************************************************************************************************!*\
  5827. !*** ./src/custom-nodes/object-expression-keys-transformer-nodes/ObjectExpressionVariableDeclarationHostNode.ts ***!
  5828. \******************************************************************************************************************/
  5829. /*! unknown exports (runtime-defined) */
  5830. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5831. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5832. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5833. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5834. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5835. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5836. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5837. };
  5838. var __metadata = (this && this.__metadata) || function (k, v) {
  5839. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5840. };
  5841. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5842. return function (target, key) { decorator(target, key, paramIndex); }
  5843. };
  5844. var _a, _b, _c, _d;
  5845. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5846. exports.ObjectExpressionVariableDeclarationHostNode = void 0;
  5847. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5848. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5849. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5850. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5851. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5852. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5853. const AbstractCustomNode_1 = __webpack_require__(/*! ../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5854. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5855. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  5856. let ObjectExpressionVariableDeclarationHostNode = class ObjectExpressionVariableDeclarationHostNode extends AbstractCustomNode_1.AbstractCustomNode {
  5857. constructor(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options) {
  5858. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5859. }
  5860. initialize(lexicalScopeNode, properties) {
  5861. this.lexicalScopeNode = lexicalScopeNode;
  5862. this.properties = properties;
  5863. }
  5864. getNodeStructure() {
  5865. const variableDeclarationName = NodeGuards_1.NodeGuards.isProgramNode(this.lexicalScopeNode)
  5866. ? this.identifierNamesGenerator.generateForGlobalScope()
  5867. : this.identifierNamesGenerator.generateForLexicalScope(this.lexicalScopeNode);
  5868. const structure = NodeFactory_1.NodeFactory.variableDeclarationNode([
  5869. NodeFactory_1.NodeFactory.variableDeclaratorNode(NodeFactory_1.NodeFactory.identifierNode(variableDeclarationName), NodeFactory_1.NodeFactory.objectExpressionNode(this.properties))
  5870. ], 'const');
  5871. return [structure];
  5872. }
  5873. };
  5874. ObjectExpressionVariableDeclarationHostNode = __decorate([
  5875. inversify_1.injectable(),
  5876. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5877. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5878. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5879. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5880. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  5881. ], ObjectExpressionVariableDeclarationHostNode);
  5882. exports.ObjectExpressionVariableDeclarationHostNode = ObjectExpressionVariableDeclarationHostNode;
  5883. /***/ }),
  5884. /***/ "./src/custom-nodes/string-array-nodes/AbstractStringArrayCallNode.ts":
  5885. /*!****************************************************************************!*\
  5886. !*** ./src/custom-nodes/string-array-nodes/AbstractStringArrayCallNode.ts ***!
  5887. \****************************************************************************/
  5888. /*! unknown exports (runtime-defined) */
  5889. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5890. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5891. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5892. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5893. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5894. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5895. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5896. };
  5897. var __metadata = (this && this.__metadata) || function (k, v) {
  5898. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5899. };
  5900. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5901. return function (target, key) { decorator(target, key, paramIndex); }
  5902. };
  5903. var AbstractStringArrayCallNode_1, _a, _b, _c, _d, _e, _f, _g;
  5904. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5905. exports.AbstractStringArrayCallNode = void 0;
  5906. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5907. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5908. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5909. const TStringArrayIndexNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory */ "./src/types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory.ts");
  5910. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  5911. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  5912. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  5913. const IStringArrayStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  5914. const StringArrayIndexesType_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayIndexesType */ "./src/enums/node-transformers/string-array-transformers/StringArrayIndexesType.ts");
  5915. const StringArrayIndexNode_1 = __webpack_require__(/*! ../../enums/custom-nodes/string-array-index-nodes/StringArrayIndexNode */ "./src/enums/custom-nodes/string-array-index-nodes/StringArrayIndexNode.ts");
  5916. const AbstractCustomNode_1 = __webpack_require__(/*! ../AbstractCustomNode */ "./src/custom-nodes/AbstractCustomNode.ts");
  5917. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  5918. const NodeMetadata_1 = __webpack_require__(/*! ../../node/NodeMetadata */ "./src/node/NodeMetadata.ts");
  5919. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  5920. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  5921. let AbstractStringArrayCallNode = AbstractStringArrayCallNode_1 = class AbstractStringArrayCallNode extends AbstractCustomNode_1.AbstractCustomNode {
  5922. constructor(identifierNamesGeneratorFactory, stringArrayIndexNodeFactory, customCodeHelperFormatter, stringArrayStorage, arrayUtils, randomGenerator, options) {
  5923. super(identifierNamesGeneratorFactory, customCodeHelperFormatter, randomGenerator, options);
  5924. this.stringArrayIndexNodeFactory = stringArrayIndexNodeFactory;
  5925. this.stringArrayStorage = stringArrayStorage;
  5926. this.arrayUtils = arrayUtils;
  5927. }
  5928. getStringArrayIndexNode(index) {
  5929. var _a;
  5930. const isPositive = index >= 0;
  5931. const normalizedIndex = Math.abs(index);
  5932. const stringArrayCallsIndexType = this.randomGenerator
  5933. .getRandomGenerator()
  5934. .pickone(this.options.stringArrayIndexesType);
  5935. const stringArrayIndexNodeName = (_a = AbstractStringArrayCallNode_1.stringArrayIndexNodesMap.get(stringArrayCallsIndexType)) !== null && _a !== void 0 ? _a : null;
  5936. if (!stringArrayIndexNodeName) {
  5937. throw new Error('Invalid string array index node name');
  5938. }
  5939. const stringArrayCallIndexNode = this.stringArrayIndexNodeFactory(stringArrayIndexNodeName)
  5940. .getNode(normalizedIndex);
  5941. NodeMetadata_1.NodeMetadata.set(stringArrayCallIndexNode, { replacedLiteral: true });
  5942. const hexadecimalNode = isPositive
  5943. ? stringArrayCallIndexNode
  5944. : NodeFactory_1.NodeFactory.unaryExpressionNode('-', stringArrayCallIndexNode);
  5945. NodeUtils_1.NodeUtils.parentizeAst(hexadecimalNode);
  5946. return hexadecimalNode;
  5947. }
  5948. getRc4KeyLiteralNode(decodeKey) {
  5949. const rc4KeyLiteralNode = NodeFactory_1.NodeFactory.literalNode(decodeKey);
  5950. NodeMetadata_1.NodeMetadata.set(rc4KeyLiteralNode, { replacedLiteral: true });
  5951. return rc4KeyLiteralNode;
  5952. }
  5953. };
  5954. AbstractStringArrayCallNode.stringArrayIndexNodesMap = new Map([
  5955. [StringArrayIndexesType_1.StringArrayIndexesType.HexadecimalNumber, StringArrayIndexNode_1.StringArrayIndexNode.StringArrayHexadecimalNumberIndexNode],
  5956. [StringArrayIndexesType_1.StringArrayIndexesType.HexadecimalNumericString, StringArrayIndexNode_1.StringArrayIndexNode.StringArrayHexadecimalNumericStringIndexNode]
  5957. ]);
  5958. AbstractStringArrayCallNode = AbstractStringArrayCallNode_1 = __decorate([
  5959. inversify_1.injectable(),
  5960. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  5961. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayIndexNode)),
  5962. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  5963. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)),
  5964. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  5965. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  5966. __param(6, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  5967. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof TStringArrayIndexNodeFactory_1.TStringArrayIndexNodeFactory !== "undefined" && TStringArrayIndexNodeFactory_1.TStringArrayIndexNodeFactory) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _c : Object, typeof (_d = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _d : Object, typeof (_e = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _e : Object, typeof (_f = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _f : Object, typeof (_g = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _g : Object])
  5968. ], AbstractStringArrayCallNode);
  5969. exports.AbstractStringArrayCallNode = AbstractStringArrayCallNode;
  5970. /***/ }),
  5971. /***/ "./src/custom-nodes/string-array-nodes/StringArrayCallNode.ts":
  5972. /*!********************************************************************!*\
  5973. !*** ./src/custom-nodes/string-array-nodes/StringArrayCallNode.ts ***!
  5974. \********************************************************************/
  5975. /*! unknown exports (runtime-defined) */
  5976. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  5977. /*! CommonJS bailout: this is used directly at 2:18-22 */
  5978. /*! CommonJS bailout: this is used directly at 8:18-22 */
  5979. /*! CommonJS bailout: this is used directly at 11:15-19 */
  5980. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  5981. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  5982. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  5983. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  5984. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  5985. return c > 3 && r && Object.defineProperty(target, key, r), r;
  5986. };
  5987. var __metadata = (this && this.__metadata) || function (k, v) {
  5988. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  5989. };
  5990. var __param = (this && this.__param) || function (paramIndex, decorator) {
  5991. return function (target, key) { decorator(target, key, paramIndex); }
  5992. };
  5993. var _a, _b, _c, _d, _e, _f, _g, _h;
  5994. Object.defineProperty(exports, "__esModule", ({ value: true }));
  5995. exports.StringArrayCallNode = void 0;
  5996. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  5997. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  5998. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  5999. const TStringArrayIndexNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory */ "./src/types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory.ts");
  6000. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  6001. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  6002. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  6003. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  6004. const IStringArrayStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  6005. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  6006. const StringArrayRootCallsWrapperParametersDefaultCount_1 = __webpack_require__(/*! ../../constants/node-transformers/string-array-transformers/StringArrayRootCallsWrapperParametersDefaultCount */ "./src/constants/node-transformers/string-array-transformers/StringArrayRootCallsWrapperParametersDefaultCount.ts");
  6007. const StringArrayScopeCallsWrapperParametersMaxCount_1 = __webpack_require__(/*! ../../constants/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperParametersMaxCount */ "./src/constants/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperParametersMaxCount.ts");
  6008. const AbstractStringArrayCallNode_1 = __webpack_require__(/*! ./AbstractStringArrayCallNode */ "./src/custom-nodes/string-array-nodes/AbstractStringArrayCallNode.ts");
  6009. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  6010. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  6011. let StringArrayCallNode = class StringArrayCallNode extends AbstractStringArrayCallNode_1.AbstractStringArrayCallNode {
  6012. constructor(identifierNamesGeneratorFactory, stringArrayIndexNodeFactory, customCodeHelperFormatter, stringArrayStorage, arrayUtils, randomGenerator, options) {
  6013. super(identifierNamesGeneratorFactory, stringArrayIndexNodeFactory, customCodeHelperFormatter, stringArrayStorage, arrayUtils, randomGenerator, options);
  6014. }
  6015. initialize(stringArrayCallsWrapperName, stringArrayCallsWrapperParameterIndexesData, index, indexShiftAmount, decodeKey) {
  6016. this.stringArrayCallsWrapperName = stringArrayCallsWrapperName;
  6017. this.stringArrayCallsWrapperParameterIndexesData = stringArrayCallsWrapperParameterIndexesData;
  6018. this.index = index;
  6019. this.indexShiftAmount = indexShiftAmount;
  6020. this.decodeKey = decodeKey;
  6021. }
  6022. getNodeStructure() {
  6023. var _a, _b;
  6024. const resultIndex = this.indexShiftAmount + this.index;
  6025. const indexNode = this.getStringArrayIndexNode(resultIndex);
  6026. const rc4KeyLiteralNode = this.decodeKey
  6027. ? this.getRc4KeyLiteralNode(this.decodeKey)
  6028. : null;
  6029. const callExpressionArgs = this.arrayUtils.fillWithRange(!this.stringArrayCallsWrapperParameterIndexesData
  6030. ? StringArrayRootCallsWrapperParametersDefaultCount_1.stringArrayRootCallsWrapperParametersDefaultCount
  6031. : StringArrayScopeCallsWrapperParametersMaxCount_1.stringArrayScopeCallsWrapperParametersMaxCount, () => this.getFakeStringArrayIndexNode(resultIndex));
  6032. callExpressionArgs.splice((_b = (_a = this.stringArrayCallsWrapperParameterIndexesData) === null || _a === void 0 ? void 0 : _a.index) !== null && _b !== void 0 ? _b : 0, 1, indexNode);
  6033. if (this.stringArrayCallsWrapperParameterIndexesData) {
  6034. callExpressionArgs.splice(this.stringArrayCallsWrapperParameterIndexesData.decodeKey, 1, rc4KeyLiteralNode !== null && rc4KeyLiteralNode !== void 0 ? rc4KeyLiteralNode : this.getFakeStringArrayIndexNode(resultIndex));
  6035. }
  6036. else if (rc4KeyLiteralNode) {
  6037. callExpressionArgs.splice(1, 1, rc4KeyLiteralNode);
  6038. }
  6039. else {
  6040. callExpressionArgs.splice(1, 1);
  6041. }
  6042. const structure = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.callExpressionNode(NodeFactory_1.NodeFactory.identifierNode(this.stringArrayCallsWrapperName), callExpressionArgs));
  6043. NodeUtils_1.NodeUtils.parentizeAst(structure);
  6044. return [structure];
  6045. }
  6046. getFakeStringArrayIndexNode(actualIndex) {
  6047. return this.getStringArrayIndexNode(this.getFakeStringArrayIndex(actualIndex));
  6048. }
  6049. getFakeStringArrayIndex(actualIndex) {
  6050. const stringArrayStorageLength = this.stringArrayStorage.getLength();
  6051. const fakeIndexOffset = stringArrayStorageLength / 2;
  6052. const minimumIndex = actualIndex - fakeIndexOffset;
  6053. const maximumIndex = actualIndex + fakeIndexOffset;
  6054. return this.randomGenerator.getRandomInteger(minimumIndex, maximumIndex);
  6055. }
  6056. };
  6057. __decorate([
  6058. Initializable_1.initializable(),
  6059. __metadata("design:type", Object)
  6060. ], StringArrayCallNode.prototype, "decodeKey", void 0);
  6061. __decorate([
  6062. Initializable_1.initializable(),
  6063. __metadata("design:type", Number)
  6064. ], StringArrayCallNode.prototype, "index", void 0);
  6065. __decorate([
  6066. Initializable_1.initializable(),
  6067. __metadata("design:type", Number)
  6068. ], StringArrayCallNode.prototype, "indexShiftAmount", void 0);
  6069. __decorate([
  6070. Initializable_1.initializable(),
  6071. __metadata("design:type", String)
  6072. ], StringArrayCallNode.prototype, "stringArrayCallsWrapperName", void 0);
  6073. __decorate([
  6074. Initializable_1.initializable(),
  6075. __metadata("design:type", Object)
  6076. ], StringArrayCallNode.prototype, "stringArrayCallsWrapperParameterIndexesData", void 0);
  6077. StringArrayCallNode = __decorate([
  6078. inversify_1.injectable(),
  6079. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  6080. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayIndexNode)),
  6081. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  6082. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)),
  6083. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  6084. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  6085. __param(6, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  6086. __metadata("design:paramtypes", [typeof (_b = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _b : Object, typeof (_c = typeof TStringArrayIndexNodeFactory_1.TStringArrayIndexNodeFactory !== "undefined" && TStringArrayIndexNodeFactory_1.TStringArrayIndexNodeFactory) === "function" ? _c : Object, typeof (_d = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _d : Object, typeof (_e = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _e : Object, typeof (_f = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _f : Object, typeof (_g = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _g : Object, typeof (_h = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _h : Object])
  6087. ], StringArrayCallNode);
  6088. exports.StringArrayCallNode = StringArrayCallNode;
  6089. /***/ }),
  6090. /***/ "./src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperFunctionNode.ts":
  6091. /*!*****************************************************************************************!*\
  6092. !*** ./src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperFunctionNode.ts ***!
  6093. \*****************************************************************************************/
  6094. /*! unknown exports (runtime-defined) */
  6095. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  6096. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  6097. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  6098. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  6099. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  6100. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  6101. return c > 3 && r && Object.defineProperty(target, key, r), r;
  6102. };
  6103. var __metadata = (this && this.__metadata) || function (k, v) {
  6104. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  6105. };
  6106. var __param = (this && this.__param) || function (paramIndex, decorator) {
  6107. return function (target, key) { decorator(target, key, paramIndex); }
  6108. };
  6109. var _a, _b, _c, _d, _e, _f, _g, _h, _j;
  6110. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6111. exports.StringArrayScopeCallsWrapperFunctionNode = void 0;
  6112. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  6113. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  6114. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  6115. const TStringArrayIndexNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory */ "./src/types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory.ts");
  6116. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  6117. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  6118. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  6119. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  6120. const IStringArrayStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  6121. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  6122. const StringArrayScopeCallsWrapperParametersMaxCount_1 = __webpack_require__(/*! ../../constants/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperParametersMaxCount */ "./src/constants/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperParametersMaxCount.ts");
  6123. const AbstractStringArrayCallNode_1 = __webpack_require__(/*! ./AbstractStringArrayCallNode */ "./src/custom-nodes/string-array-nodes/AbstractStringArrayCallNode.ts");
  6124. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  6125. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  6126. const StringArrayRootCallsWrapperParametersDefaultCount_1 = __webpack_require__(/*! ../../constants/node-transformers/string-array-transformers/StringArrayRootCallsWrapperParametersDefaultCount */ "./src/constants/node-transformers/string-array-transformers/StringArrayRootCallsWrapperParametersDefaultCount.ts");
  6127. let StringArrayScopeCallsWrapperFunctionNode = class StringArrayScopeCallsWrapperFunctionNode extends AbstractStringArrayCallNode_1.AbstractStringArrayCallNode {
  6128. constructor(identifierNamesGeneratorFactory, stringArrayIndexNodeFactory, customCodeHelperFormatter, stringArrayStorage, arrayUtils, randomGenerator, options) {
  6129. super(identifierNamesGeneratorFactory, stringArrayIndexNodeFactory, customCodeHelperFormatter, stringArrayStorage, arrayUtils, randomGenerator, options);
  6130. }
  6131. initialize(stringArrayScopeCallsWrapperName, stringArrayScopeCallsWrapperParameterIndexesData, upperStringArrayCallsWrapperName, upperStringArrayCallsWrapperParameterIndexesData, shiftedIndex) {
  6132. this.stringArrayScopeCallsWrapperName = stringArrayScopeCallsWrapperName;
  6133. this.stringArrayScopeCallsWrapperParameterIndexesData = stringArrayScopeCallsWrapperParameterIndexesData;
  6134. this.upperStringArrayCallsWrapperName = upperStringArrayCallsWrapperName;
  6135. this.upperStringArrayCallsWrapperParameterIndexesData = upperStringArrayCallsWrapperParameterIndexesData;
  6136. this.shiftedIndex = shiftedIndex;
  6137. }
  6138. getNodeStructure() {
  6139. var _a, _b, _c, _d, _e, _f, _g, _h;
  6140. const stringArrayCallIdentifierNode = NodeFactory_1.NodeFactory.identifierNode(this.randomGenerator.getRandomString(6));
  6141. const decodeKeyIdentifierNode = NodeFactory_1.NodeFactory.identifierNode(this.randomGenerator.getRandomString(6));
  6142. const stringArrayCallNode = this.getUpperStringArrayCallNode(stringArrayCallIdentifierNode, this.getStringArrayIndexNode(this.shiftedIndex));
  6143. const parameters = this.arrayUtils.fillWithRange(!this.stringArrayScopeCallsWrapperParameterIndexesData
  6144. ? StringArrayRootCallsWrapperParametersDefaultCount_1.stringArrayRootCallsWrapperParametersDefaultCount
  6145. : StringArrayScopeCallsWrapperParametersMaxCount_1.stringArrayScopeCallsWrapperParametersMaxCount, () => this.getFakeParameterNode());
  6146. parameters.splice((_b = (_a = this.stringArrayScopeCallsWrapperParameterIndexesData) === null || _a === void 0 ? void 0 : _a.index) !== null && _b !== void 0 ? _b : 0, 1, stringArrayCallIdentifierNode);
  6147. parameters.splice((_d = (_c = this.stringArrayScopeCallsWrapperParameterIndexesData) === null || _c === void 0 ? void 0 : _c.decodeKey) !== null && _d !== void 0 ? _d : 1, 1, decodeKeyIdentifierNode);
  6148. const callExpressionArgs = this.arrayUtils.fillWithRange(!this.upperStringArrayCallsWrapperParameterIndexesData
  6149. ? StringArrayRootCallsWrapperParametersDefaultCount_1.stringArrayRootCallsWrapperParametersDefaultCount
  6150. : StringArrayScopeCallsWrapperParametersMaxCount_1.stringArrayScopeCallsWrapperParametersMaxCount, (index) => this.getUpperStringArrayCallNode(parameters[index], this.getFakeUpperStringArrayIndexNode()));
  6151. callExpressionArgs.splice((_f = (_e = this.upperStringArrayCallsWrapperParameterIndexesData) === null || _e === void 0 ? void 0 : _e.index) !== null && _f !== void 0 ? _f : 0, 1, stringArrayCallNode);
  6152. callExpressionArgs.splice((_h = (_g = this.upperStringArrayCallsWrapperParameterIndexesData) === null || _g === void 0 ? void 0 : _g.decodeKey) !== null && _h !== void 0 ? _h : 1, 1, decodeKeyIdentifierNode);
  6153. const functionExpressionNode = NodeFactory_1.NodeFactory.functionExpressionNode(parameters, NodeFactory_1.NodeFactory.blockStatementNode([
  6154. NodeFactory_1.NodeFactory.returnStatementNode(NodeFactory_1.NodeFactory.callExpressionNode(NodeFactory_1.NodeFactory.identifierNode(this.upperStringArrayCallsWrapperName), callExpressionArgs))
  6155. ]));
  6156. const structure = NodeFactory_1.NodeFactory.variableDeclarationNode([
  6157. NodeFactory_1.NodeFactory.variableDeclaratorNode(NodeFactory_1.NodeFactory.identifierNode(this.stringArrayScopeCallsWrapperName), functionExpressionNode)
  6158. ], 'const');
  6159. NodeUtils_1.NodeUtils.parentizeAst(structure);
  6160. for (const parameter of parameters) {
  6161. parameter.name = this.identifierNamesGenerator.generateForLexicalScope(functionExpressionNode);
  6162. }
  6163. return [structure];
  6164. }
  6165. getUpperStringArrayCallNode(indexParameterIdentifierNode, indexShiftNode) {
  6166. return NodeFactory_1.NodeFactory.binaryExpressionNode('-', indexParameterIdentifierNode, indexShiftNode);
  6167. }
  6168. getFakeParameterNode() {
  6169. return NodeFactory_1.NodeFactory.identifierNode(this.randomGenerator.getRandomString(6));
  6170. }
  6171. getFakeUpperStringArrayIndexNode() {
  6172. return this.getStringArrayIndexNode(this.randomGenerator.getRandomInteger(0, 500));
  6173. }
  6174. };
  6175. __decorate([
  6176. Initializable_1.initializable(),
  6177. __metadata("design:type", Number)
  6178. ], StringArrayScopeCallsWrapperFunctionNode.prototype, "shiftedIndex", void 0);
  6179. __decorate([
  6180. Initializable_1.initializable(),
  6181. __metadata("design:type", String)
  6182. ], StringArrayScopeCallsWrapperFunctionNode.prototype, "upperStringArrayCallsWrapperName", void 0);
  6183. __decorate([
  6184. Initializable_1.initializable(),
  6185. __metadata("design:type", Object)
  6186. ], StringArrayScopeCallsWrapperFunctionNode.prototype, "upperStringArrayCallsWrapperParameterIndexesData", void 0);
  6187. __decorate([
  6188. Initializable_1.initializable(),
  6189. __metadata("design:type", String)
  6190. ], StringArrayScopeCallsWrapperFunctionNode.prototype, "stringArrayScopeCallsWrapperName", void 0);
  6191. __decorate([
  6192. Initializable_1.initializable(),
  6193. __metadata("design:type", Object)
  6194. ], StringArrayScopeCallsWrapperFunctionNode.prototype, "stringArrayScopeCallsWrapperParameterIndexesData", void 0);
  6195. StringArrayScopeCallsWrapperFunctionNode = __decorate([
  6196. inversify_1.injectable(),
  6197. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  6198. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayIndexNode)),
  6199. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  6200. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)),
  6201. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  6202. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  6203. __param(6, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  6204. __metadata("design:paramtypes", [typeof (_c = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _c : Object, typeof (_d = typeof TStringArrayIndexNodeFactory_1.TStringArrayIndexNodeFactory !== "undefined" && TStringArrayIndexNodeFactory_1.TStringArrayIndexNodeFactory) === "function" ? _d : Object, typeof (_e = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _e : Object, typeof (_f = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _f : Object, typeof (_g = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _g : Object, typeof (_h = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _h : Object, typeof (_j = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _j : Object])
  6205. ], StringArrayScopeCallsWrapperFunctionNode);
  6206. exports.StringArrayScopeCallsWrapperFunctionNode = StringArrayScopeCallsWrapperFunctionNode;
  6207. /***/ }),
  6208. /***/ "./src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperVariableNode.ts":
  6209. /*!*****************************************************************************************!*\
  6210. !*** ./src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperVariableNode.ts ***!
  6211. \*****************************************************************************************/
  6212. /*! unknown exports (runtime-defined) */
  6213. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  6214. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  6215. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  6216. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  6217. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  6218. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  6219. return c > 3 && r && Object.defineProperty(target, key, r), r;
  6220. };
  6221. var __metadata = (this && this.__metadata) || function (k, v) {
  6222. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  6223. };
  6224. var __param = (this && this.__param) || function (paramIndex, decorator) {
  6225. return function (target, key) { decorator(target, key, paramIndex); }
  6226. };
  6227. var _a, _b, _c, _d, _e, _f, _g;
  6228. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6229. exports.StringArrayScopeCallsWrapperVariableNode = void 0;
  6230. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  6231. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  6232. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  6233. const TStringArrayIndexNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory */ "./src/types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory.ts");
  6234. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  6235. const ICustomCodeHelperFormatter_1 = __webpack_require__(/*! ../../interfaces/custom-code-helpers/ICustomCodeHelperFormatter */ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts");
  6236. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  6237. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  6238. const IStringArrayStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  6239. const Initializable_1 = __webpack_require__(/*! ../../decorators/Initializable */ "./src/decorators/Initializable.ts");
  6240. const AbstractStringArrayCallNode_1 = __webpack_require__(/*! ./AbstractStringArrayCallNode */ "./src/custom-nodes/string-array-nodes/AbstractStringArrayCallNode.ts");
  6241. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  6242. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  6243. let StringArrayScopeCallsWrapperVariableNode = class StringArrayScopeCallsWrapperVariableNode extends AbstractStringArrayCallNode_1.AbstractStringArrayCallNode {
  6244. constructor(identifierNamesGeneratorFactory, stringArrayIndexNodeFactory, customCodeHelperFormatter, stringArrayStorage, arrayUtils, randomGenerator, options) {
  6245. super(identifierNamesGeneratorFactory, stringArrayIndexNodeFactory, customCodeHelperFormatter, stringArrayStorage, arrayUtils, randomGenerator, options);
  6246. }
  6247. initialize(stringArrayScopeCallsWrapperName, stringArrayCallsWrapperName) {
  6248. this.stringArrayScopeCallsWrapperName = stringArrayScopeCallsWrapperName;
  6249. this.stringArrayCallsWrapperName = stringArrayCallsWrapperName;
  6250. }
  6251. getNodeStructure() {
  6252. const structure = NodeFactory_1.NodeFactory.variableDeclarationNode([
  6253. NodeFactory_1.NodeFactory.variableDeclaratorNode(NodeFactory_1.NodeFactory.identifierNode(this.stringArrayScopeCallsWrapperName), NodeFactory_1.NodeFactory.identifierNode(this.stringArrayCallsWrapperName))
  6254. ], 'const');
  6255. NodeUtils_1.NodeUtils.parentizeAst(structure);
  6256. return [structure];
  6257. }
  6258. };
  6259. __decorate([
  6260. Initializable_1.initializable(),
  6261. __metadata("design:type", String)
  6262. ], StringArrayScopeCallsWrapperVariableNode.prototype, "stringArrayCallsWrapperName", void 0);
  6263. __decorate([
  6264. Initializable_1.initializable(),
  6265. __metadata("design:type", String)
  6266. ], StringArrayScopeCallsWrapperVariableNode.prototype, "stringArrayScopeCallsWrapperName", void 0);
  6267. StringArrayScopeCallsWrapperVariableNode = __decorate([
  6268. inversify_1.injectable(),
  6269. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  6270. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayIndexNode)),
  6271. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICustomCodeHelperFormatter)),
  6272. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)),
  6273. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  6274. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  6275. __param(6, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  6276. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof TStringArrayIndexNodeFactory_1.TStringArrayIndexNodeFactory !== "undefined" && TStringArrayIndexNodeFactory_1.TStringArrayIndexNodeFactory) === "function" ? _b : Object, typeof (_c = typeof ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter !== "undefined" && ICustomCodeHelperFormatter_1.ICustomCodeHelperFormatter) === "function" ? _c : Object, typeof (_d = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _d : Object, typeof (_e = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _e : Object, typeof (_f = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _f : Object, typeof (_g = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _g : Object])
  6277. ], StringArrayScopeCallsWrapperVariableNode);
  6278. exports.StringArrayScopeCallsWrapperVariableNode = StringArrayScopeCallsWrapperVariableNode;
  6279. /***/ }),
  6280. /***/ "./src/custom-nodes/string-array-nodes/string-array-index-nodes/AbstractStringArrayIndexNode.ts":
  6281. /*!******************************************************************************************************!*\
  6282. !*** ./src/custom-nodes/string-array-nodes/string-array-index-nodes/AbstractStringArrayIndexNode.ts ***!
  6283. \******************************************************************************************************/
  6284. /*! unknown exports (runtime-defined) */
  6285. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  6286. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  6287. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  6288. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  6289. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  6290. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  6291. return c > 3 && r && Object.defineProperty(target, key, r), r;
  6292. };
  6293. var __metadata = (this && this.__metadata) || function (k, v) {
  6294. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  6295. };
  6296. var __param = (this && this.__param) || function (paramIndex, decorator) {
  6297. return function (target, key) { decorator(target, key, paramIndex); }
  6298. };
  6299. var _a, _b;
  6300. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6301. exports.AbstractStringArrayIndexNode = void 0;
  6302. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  6303. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  6304. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  6305. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  6306. let AbstractStringArrayIndexNode = class AbstractStringArrayIndexNode {
  6307. constructor(randomGenerator, options) {
  6308. this.randomGenerator = randomGenerator;
  6309. this.options = options;
  6310. }
  6311. };
  6312. AbstractStringArrayIndexNode = __decorate([
  6313. inversify_1.injectable(),
  6314. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  6315. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  6316. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  6317. ], AbstractStringArrayIndexNode);
  6318. exports.AbstractStringArrayIndexNode = AbstractStringArrayIndexNode;
  6319. /***/ }),
  6320. /***/ "./src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumberIndexNode.ts":
  6321. /*!***************************************************************************************************************!*\
  6322. !*** ./src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumberIndexNode.ts ***!
  6323. \***************************************************************************************************************/
  6324. /*! unknown exports (runtime-defined) */
  6325. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  6326. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  6327. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  6328. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  6329. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  6330. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  6331. return c > 3 && r && Object.defineProperty(target, key, r), r;
  6332. };
  6333. var __metadata = (this && this.__metadata) || function (k, v) {
  6334. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  6335. };
  6336. var __param = (this && this.__param) || function (paramIndex, decorator) {
  6337. return function (target, key) { decorator(target, key, paramIndex); }
  6338. };
  6339. var _a, _b;
  6340. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6341. exports.StringArrayHexadecimalNumberIndexNode = void 0;
  6342. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  6343. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  6344. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  6345. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  6346. const AbstractStringArrayIndexNode_1 = __webpack_require__(/*! ./AbstractStringArrayIndexNode */ "./src/custom-nodes/string-array-nodes/string-array-index-nodes/AbstractStringArrayIndexNode.ts");
  6347. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  6348. const NumberUtils_1 = __webpack_require__(/*! ../../../utils/NumberUtils */ "./src/utils/NumberUtils.ts");
  6349. let StringArrayHexadecimalNumberIndexNode = class StringArrayHexadecimalNumberIndexNode extends AbstractStringArrayIndexNode_1.AbstractStringArrayIndexNode {
  6350. constructor(randomGenerator, options) {
  6351. super(randomGenerator, options);
  6352. }
  6353. getNode(index) {
  6354. const hexadecimalIndex = NumberUtils_1.NumberUtils.toHex(index);
  6355. return NodeFactory_1.NodeFactory.literalNode(index, hexadecimalIndex);
  6356. }
  6357. };
  6358. StringArrayHexadecimalNumberIndexNode = __decorate([
  6359. inversify_1.injectable(),
  6360. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  6361. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  6362. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  6363. ], StringArrayHexadecimalNumberIndexNode);
  6364. exports.StringArrayHexadecimalNumberIndexNode = StringArrayHexadecimalNumberIndexNode;
  6365. /***/ }),
  6366. /***/ "./src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumericStringIndexNode.ts":
  6367. /*!**********************************************************************************************************************!*\
  6368. !*** ./src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumericStringIndexNode.ts ***!
  6369. \**********************************************************************************************************************/
  6370. /*! unknown exports (runtime-defined) */
  6371. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  6372. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  6373. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  6374. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  6375. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  6376. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  6377. return c > 3 && r && Object.defineProperty(target, key, r), r;
  6378. };
  6379. var __metadata = (this && this.__metadata) || function (k, v) {
  6380. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  6381. };
  6382. var __param = (this && this.__param) || function (paramIndex, decorator) {
  6383. return function (target, key) { decorator(target, key, paramIndex); }
  6384. };
  6385. var _a, _b;
  6386. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6387. exports.StringArrayHexadecimalNumericStringIndexNode = void 0;
  6388. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  6389. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  6390. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  6391. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  6392. const AbstractStringArrayIndexNode_1 = __webpack_require__(/*! ./AbstractStringArrayIndexNode */ "./src/custom-nodes/string-array-nodes/string-array-index-nodes/AbstractStringArrayIndexNode.ts");
  6393. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  6394. const NumberUtils_1 = __webpack_require__(/*! ../../../utils/NumberUtils */ "./src/utils/NumberUtils.ts");
  6395. let StringArrayHexadecimalNumericStringIndexNode = class StringArrayHexadecimalNumericStringIndexNode extends AbstractStringArrayIndexNode_1.AbstractStringArrayIndexNode {
  6396. constructor(randomGenerator, options) {
  6397. super(randomGenerator, options);
  6398. }
  6399. getNode(index) {
  6400. const hexadecimalIndex = NumberUtils_1.NumberUtils.toHex(index);
  6401. return NodeFactory_1.NodeFactory.literalNode(hexadecimalIndex);
  6402. }
  6403. };
  6404. StringArrayHexadecimalNumericStringIndexNode = __decorate([
  6405. inversify_1.injectable(),
  6406. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  6407. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  6408. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  6409. ], StringArrayHexadecimalNumericStringIndexNode);
  6410. exports.StringArrayHexadecimalNumericStringIndexNode = StringArrayHexadecimalNumericStringIndexNode;
  6411. /***/ }),
  6412. /***/ "./src/decorators/Initializable.ts":
  6413. /*!*****************************************!*\
  6414. !*** ./src/decorators/Initializable.ts ***!
  6415. \*****************************************/
  6416. /*! flagged exports */
  6417. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6418. /*! export initializable [provided] [no usage info] [missing usage info prevents renaming] */
  6419. /*! other exports [not provided] [no usage info] */
  6420. /*! runtime requirements: __webpack_exports__ */
  6421. /***/ ((__unused_webpack_module, exports) => {
  6422. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6423. exports.initializable = void 0;
  6424. const defaultDescriptor = {
  6425. configurable: true,
  6426. enumerable: true
  6427. };
  6428. const initializedTargetMetadataKey = '_initialized';
  6429. const initializablePropertiesSetMetadataKey = '_initializablePropertiesSet';
  6430. const wrappedMethodsSetMetadataKey = '_wrappedMethodsSet';
  6431. const constructorMethodName = 'constructor';
  6432. function initializable(initializeMethodName = 'initialize') {
  6433. const decoratorName = Object.keys(this)[0];
  6434. return (target, propertyKey) => {
  6435. const initializeMethod = target[initializeMethodName];
  6436. if (!initializeMethod || typeof initializeMethod !== 'function') {
  6437. throw new Error(`\`${initializeMethodName}\` method with initialization logic not ` +
  6438. `found. \`@${decoratorName}\` decorator requires \`${initializeMethodName}\` method`);
  6439. }
  6440. initializeTargetMetadata(initializedTargetMetadataKey, false, target);
  6441. initializeTargetMetadata(initializablePropertiesSetMetadataKey, new Set(), target);
  6442. initializeTargetMetadata(wrappedMethodsSetMetadataKey, new Set(), target);
  6443. wrapTargetMethodsInInitializedCheck(target, initializeMethodName);
  6444. wrapInitializeMethodInInitializeCheck(target, initializeMethodName, propertyKey);
  6445. return wrapInitializableProperty(target, propertyKey);
  6446. };
  6447. }
  6448. exports.initializable = initializable;
  6449. function initializeTargetMetadata(metadataKey, metadataValue, target) {
  6450. const hasInitializedMetadata = Reflect.hasMetadata(metadataKey, target);
  6451. if (!hasInitializedMetadata) {
  6452. Reflect.defineMetadata(metadataKey, metadataValue, target);
  6453. }
  6454. }
  6455. function wrapTargetMethodsInInitializedCheck(target, initializeMethodName) {
  6456. const ownPropertyNames = Object.getOwnPropertyNames(target);
  6457. const prohibitedPropertyNames = new Set([initializeMethodName, constructorMethodName]);
  6458. ownPropertyNames.forEach((propertyName) => {
  6459. var _a;
  6460. const initializablePropertiesSet = Reflect
  6461. .getMetadata(initializablePropertiesSetMetadataKey, target);
  6462. const wrappedMethodsSet = Reflect
  6463. .getMetadata(wrappedMethodsSetMetadataKey, target);
  6464. const isProhibitedPropertyName = prohibitedPropertyNames.has(propertyName)
  6465. || initializablePropertiesSet.has(propertyName)
  6466. || wrappedMethodsSet.has(propertyName);
  6467. if (isProhibitedPropertyName) {
  6468. return;
  6469. }
  6470. const targetProperty = target[propertyName];
  6471. if (typeof targetProperty !== 'function') {
  6472. return;
  6473. }
  6474. const methodDescriptor = (_a = Object
  6475. .getOwnPropertyDescriptor(target, propertyName)) !== null && _a !== void 0 ? _a : defaultDescriptor;
  6476. const originalMethod = methodDescriptor.value;
  6477. Object.defineProperty(target, propertyName, Object.assign(Object.assign({}, methodDescriptor), { value() {
  6478. if (!Reflect.getMetadata(initializedTargetMetadataKey, this)) {
  6479. throw new Error(`Class should be initialized with \`${initializeMethodName}()\` method`);
  6480. }
  6481. return originalMethod.apply(this, arguments);
  6482. } }));
  6483. wrappedMethodsSet.add(propertyName);
  6484. });
  6485. }
  6486. function wrapInitializeMethodInInitializeCheck(target, initializeMethodName, propertyKey) {
  6487. var _a;
  6488. const methodDescriptor = (_a = Object
  6489. .getOwnPropertyDescriptor(target, initializeMethodName)) !== null && _a !== void 0 ? _a : defaultDescriptor;
  6490. const originalMethod = methodDescriptor.value;
  6491. Object.defineProperty(target, initializeMethodName, Object.assign(Object.assign({}, methodDescriptor), { value: function () {
  6492. Reflect.defineMetadata(initializedTargetMetadataKey, true, this);
  6493. const result = originalMethod.apply(this, arguments);
  6494. if (this[propertyKey]) { }
  6495. return result;
  6496. } }));
  6497. }
  6498. function wrapInitializableProperty(target, propertyKey) {
  6499. var _a;
  6500. const initializablePropertiesSet = Reflect
  6501. .getMetadata(initializablePropertiesSetMetadataKey, target);
  6502. initializablePropertiesSet.add(propertyKey);
  6503. const initializablePropertyMetadataKey = `_${propertyKey.toString()}`;
  6504. const propertyDescriptor = (_a = Object
  6505. .getOwnPropertyDescriptor(target, initializablePropertyMetadataKey)) !== null && _a !== void 0 ? _a : defaultDescriptor;
  6506. Object.defineProperty(target, propertyKey, Object.assign(Object.assign({}, propertyDescriptor), { get: function () {
  6507. if (this[initializablePropertyMetadataKey] === undefined) {
  6508. throw new Error(`Property \`${propertyKey.toString()}\` is not initialized! Initialize it first!`);
  6509. }
  6510. return this[initializablePropertyMetadataKey];
  6511. }, set: function (newVal) {
  6512. this[initializablePropertyMetadataKey] = newVal;
  6513. } }));
  6514. return propertyDescriptor;
  6515. }
  6516. /***/ }),
  6517. /***/ "./src/enums/ObfuscationTarget.ts":
  6518. /*!****************************************!*\
  6519. !*** ./src/enums/ObfuscationTarget.ts ***!
  6520. \****************************************/
  6521. /*! flagged exports */
  6522. /*! export ObfuscationTarget [provided] [no usage info] [missing usage info prevents renaming] */
  6523. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6524. /*! other exports [not provided] [no usage info] */
  6525. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  6526. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  6527. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6528. exports.ObfuscationTarget = void 0;
  6529. const Utils_1 = __webpack_require__(/*! ../utils/Utils */ "./src/utils/Utils.ts");
  6530. exports.ObfuscationTarget = Utils_1.Utils.makeEnum({
  6531. Browser: 'browser',
  6532. BrowserNoEval: 'browser-no-eval',
  6533. Node: 'node'
  6534. });
  6535. /***/ }),
  6536. /***/ "./src/enums/StringSeparator.ts":
  6537. /*!**************************************!*\
  6538. !*** ./src/enums/StringSeparator.ts ***!
  6539. \**************************************/
  6540. /*! flagged exports */
  6541. /*! export StringSeparator [provided] [no usage info] [missing usage info prevents renaming] */
  6542. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6543. /*! other exports [not provided] [no usage info] */
  6544. /*! runtime requirements: __webpack_exports__ */
  6545. /***/ ((__unused_webpack_module, exports) => {
  6546. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6547. exports.StringSeparator = void 0;
  6548. var StringSeparator;
  6549. (function (StringSeparator) {
  6550. StringSeparator["Comma"] = ",";
  6551. StringSeparator["Dot"] = ".";
  6552. StringSeparator["VerticalLine"] = "|";
  6553. })(StringSeparator = exports.StringSeparator || (exports.StringSeparator = {}));
  6554. /***/ }),
  6555. /***/ "./src/enums/analyzers/calls-graph-analyzer/CalleeDataExtractor.ts":
  6556. /*!*************************************************************************!*\
  6557. !*** ./src/enums/analyzers/calls-graph-analyzer/CalleeDataExtractor.ts ***!
  6558. \*************************************************************************/
  6559. /*! flagged exports */
  6560. /*! export CalleeDataExtractor [provided] [no usage info] [missing usage info prevents renaming] */
  6561. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6562. /*! other exports [not provided] [no usage info] */
  6563. /*! runtime requirements: __webpack_exports__ */
  6564. /***/ ((__unused_webpack_module, exports) => {
  6565. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6566. exports.CalleeDataExtractor = void 0;
  6567. var CalleeDataExtractor;
  6568. (function (CalleeDataExtractor) {
  6569. CalleeDataExtractor["FunctionDeclarationCalleeDataExtractor"] = "FunctionDeclarationCalleeDataExtractor";
  6570. CalleeDataExtractor["FunctionExpressionCalleeDataExtractor"] = "FunctionExpressionCalleeDataExtractor";
  6571. CalleeDataExtractor["ObjectExpressionCalleeDataExtractor"] = "ObjectExpressionCalleeDataExtractor";
  6572. })(CalleeDataExtractor = exports.CalleeDataExtractor || (exports.CalleeDataExtractor = {}));
  6573. /***/ }),
  6574. /***/ "./src/enums/code-transformers/CodeTransformationStage.ts":
  6575. /*!****************************************************************!*\
  6576. !*** ./src/enums/code-transformers/CodeTransformationStage.ts ***!
  6577. \****************************************************************/
  6578. /*! flagged exports */
  6579. /*! export CodeTransformationStage [provided] [no usage info] [missing usage info prevents renaming] */
  6580. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6581. /*! other exports [not provided] [no usage info] */
  6582. /*! runtime requirements: __webpack_exports__ */
  6583. /***/ ((__unused_webpack_module, exports) => {
  6584. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6585. exports.CodeTransformationStage = void 0;
  6586. var CodeTransformationStage;
  6587. (function (CodeTransformationStage) {
  6588. CodeTransformationStage["PreparingTransformers"] = "PreparingTransformers";
  6589. CodeTransformationStage["FinalizingTransformers"] = "FinalizingTransformers";
  6590. })(CodeTransformationStage = exports.CodeTransformationStage || (exports.CodeTransformationStage = {}));
  6591. /***/ }),
  6592. /***/ "./src/enums/code-transformers/CodeTransformer.ts":
  6593. /*!********************************************************!*\
  6594. !*** ./src/enums/code-transformers/CodeTransformer.ts ***!
  6595. \********************************************************/
  6596. /*! flagged exports */
  6597. /*! export CodeTransformer [provided] [no usage info] [missing usage info prevents renaming] */
  6598. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6599. /*! other exports [not provided] [no usage info] */
  6600. /*! runtime requirements: __webpack_exports__ */
  6601. /***/ ((__unused_webpack_module, exports) => {
  6602. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6603. exports.CodeTransformer = void 0;
  6604. var CodeTransformer;
  6605. (function (CodeTransformer) {
  6606. CodeTransformer["HashbangOperatorTransformer"] = "HashbangOperatorTransformer";
  6607. })(CodeTransformer = exports.CodeTransformer || (exports.CodeTransformer = {}));
  6608. /***/ }),
  6609. /***/ "./src/enums/custom-code-helpers/CustomCodeHelper.ts":
  6610. /*!***********************************************************!*\
  6611. !*** ./src/enums/custom-code-helpers/CustomCodeHelper.ts ***!
  6612. \***********************************************************/
  6613. /*! flagged exports */
  6614. /*! export CustomCodeHelper [provided] [no usage info] [missing usage info prevents renaming] */
  6615. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6616. /*! other exports [not provided] [no usage info] */
  6617. /*! runtime requirements: __webpack_exports__ */
  6618. /***/ ((__unused_webpack_module, exports) => {
  6619. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6620. exports.CustomCodeHelper = void 0;
  6621. var CustomCodeHelper;
  6622. (function (CustomCodeHelper) {
  6623. CustomCodeHelper["CallsControllerFunction"] = "CallsControllerFunction";
  6624. CustomCodeHelper["ConsoleOutputDisable"] = "ConsoleOutputDisable";
  6625. CustomCodeHelper["DebugProtectionFunctionCall"] = "DebugProtectionFunctionCall";
  6626. CustomCodeHelper["DebugProtectionFunctionInterval"] = "DebugProtectionFunctionInterval";
  6627. CustomCodeHelper["DebugProtectionFunction"] = "DebugProtectionFunction";
  6628. CustomCodeHelper["DomainLock"] = "DomainLock";
  6629. CustomCodeHelper["SelfDefendingUnicode"] = "SelfDefendingUnicode";
  6630. CustomCodeHelper["StringArray"] = "StringArray";
  6631. CustomCodeHelper["StringArrayCallsWrapper"] = "StringArrayCallsWrapper";
  6632. CustomCodeHelper["StringArrayCallsWrapperBase64"] = "StringArrayCallsWrapperBase64";
  6633. CustomCodeHelper["StringArrayCallsWrapperRc4"] = "StringArrayCallsWrapperRc4";
  6634. CustomCodeHelper["StringArrayRotateFunction"] = "StringArrayRotateFunction";
  6635. })(CustomCodeHelper = exports.CustomCodeHelper || (exports.CustomCodeHelper = {}));
  6636. /***/ }),
  6637. /***/ "./src/enums/custom-code-helpers/CustomCodeHelperGroup.ts":
  6638. /*!****************************************************************!*\
  6639. !*** ./src/enums/custom-code-helpers/CustomCodeHelperGroup.ts ***!
  6640. \****************************************************************/
  6641. /*! flagged exports */
  6642. /*! export CustomCodeHelperGroup [provided] [no usage info] [missing usage info prevents renaming] */
  6643. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6644. /*! other exports [not provided] [no usage info] */
  6645. /*! runtime requirements: __webpack_exports__ */
  6646. /***/ ((__unused_webpack_module, exports) => {
  6647. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6648. exports.CustomCodeHelperGroup = void 0;
  6649. var CustomCodeHelperGroup;
  6650. (function (CustomCodeHelperGroup) {
  6651. CustomCodeHelperGroup["ConsoleOutput"] = "ConsoleOutput";
  6652. CustomCodeHelperGroup["DebugProtection"] = "DebugProtection";
  6653. CustomCodeHelperGroup["DomainLock"] = "DomainLock";
  6654. CustomCodeHelperGroup["SelfDefending"] = "SelfDefending";
  6655. CustomCodeHelperGroup["StringArray"] = "StringArray";
  6656. })(CustomCodeHelperGroup = exports.CustomCodeHelperGroup || (exports.CustomCodeHelperGroup = {}));
  6657. /***/ }),
  6658. /***/ "./src/enums/custom-nodes/ControlFlowCustomNode.ts":
  6659. /*!*********************************************************!*\
  6660. !*** ./src/enums/custom-nodes/ControlFlowCustomNode.ts ***!
  6661. \*********************************************************/
  6662. /*! flagged exports */
  6663. /*! export ControlFlowCustomNode [provided] [no usage info] [missing usage info prevents renaming] */
  6664. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6665. /*! other exports [not provided] [no usage info] */
  6666. /*! runtime requirements: __webpack_exports__ */
  6667. /***/ ((__unused_webpack_module, exports) => {
  6668. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6669. exports.ControlFlowCustomNode = void 0;
  6670. var ControlFlowCustomNode;
  6671. (function (ControlFlowCustomNode) {
  6672. ControlFlowCustomNode["BinaryExpressionFunctionNode"] = "BinaryExpressionFunctionNode";
  6673. ControlFlowCustomNode["BlockStatementControlFlowFlatteningNode"] = "BlockStatementControlFlowFlatteningNode";
  6674. ControlFlowCustomNode["CallExpressionControlFlowStorageCallNode"] = "CallExpressionControlFlowStorageCallNode";
  6675. ControlFlowCustomNode["CallExpressionFunctionNode"] = "CallExpressionFunctionNode";
  6676. ControlFlowCustomNode["ControlFlowStorageNode"] = "ControlFlowStorageNode";
  6677. ControlFlowCustomNode["ExpressionWithOperatorControlFlowStorageCallNode"] = "ExpressionWithOperatorControlFlowStorageCallNode";
  6678. ControlFlowCustomNode["LogicalExpressionFunctionNode"] = "LogicalExpressionFunctionNode";
  6679. ControlFlowCustomNode["StringLiteralControlFlowStorageCallNode"] = "StringLiteralControlFlowStorageCallNode";
  6680. ControlFlowCustomNode["StringLiteralNode"] = "StringLiteralNode";
  6681. })(ControlFlowCustomNode = exports.ControlFlowCustomNode || (exports.ControlFlowCustomNode = {}));
  6682. /***/ }),
  6683. /***/ "./src/enums/custom-nodes/DeadCodeInjectionCustomNode.ts":
  6684. /*!***************************************************************!*\
  6685. !*** ./src/enums/custom-nodes/DeadCodeInjectionCustomNode.ts ***!
  6686. \***************************************************************/
  6687. /*! flagged exports */
  6688. /*! export DeadCodeInjectionCustomNode [provided] [no usage info] [missing usage info prevents renaming] */
  6689. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6690. /*! other exports [not provided] [no usage info] */
  6691. /*! runtime requirements: __webpack_exports__ */
  6692. /***/ ((__unused_webpack_module, exports) => {
  6693. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6694. exports.DeadCodeInjectionCustomNode = void 0;
  6695. var DeadCodeInjectionCustomNode;
  6696. (function (DeadCodeInjectionCustomNode) {
  6697. DeadCodeInjectionCustomNode["BlockStatementDeadCodeInjectionNode"] = "BlockStatementDeadCodeInjectionNode";
  6698. })(DeadCodeInjectionCustomNode = exports.DeadCodeInjectionCustomNode || (exports.DeadCodeInjectionCustomNode = {}));
  6699. /***/ }),
  6700. /***/ "./src/enums/custom-nodes/ObjectExpressionKeysTransformerCustomNode.ts":
  6701. /*!*****************************************************************************!*\
  6702. !*** ./src/enums/custom-nodes/ObjectExpressionKeysTransformerCustomNode.ts ***!
  6703. \*****************************************************************************/
  6704. /*! flagged exports */
  6705. /*! export ObjectExpressionKeysTransformerCustomNode [provided] [no usage info] [missing usage info prevents renaming] */
  6706. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6707. /*! other exports [not provided] [no usage info] */
  6708. /*! runtime requirements: __webpack_exports__ */
  6709. /***/ ((__unused_webpack_module, exports) => {
  6710. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6711. exports.ObjectExpressionKeysTransformerCustomNode = void 0;
  6712. var ObjectExpressionKeysTransformerCustomNode;
  6713. (function (ObjectExpressionKeysTransformerCustomNode) {
  6714. ObjectExpressionKeysTransformerCustomNode["ObjectExpressionVariableDeclarationHostNode"] = "ObjectExpressionVariableDeclarationHostNode";
  6715. })(ObjectExpressionKeysTransformerCustomNode = exports.ObjectExpressionKeysTransformerCustomNode || (exports.ObjectExpressionKeysTransformerCustomNode = {}));
  6716. /***/ }),
  6717. /***/ "./src/enums/custom-nodes/StringArrayCustomNode.ts":
  6718. /*!*********************************************************!*\
  6719. !*** ./src/enums/custom-nodes/StringArrayCustomNode.ts ***!
  6720. \*********************************************************/
  6721. /*! flagged exports */
  6722. /*! export StringArrayCustomNode [provided] [no usage info] [missing usage info prevents renaming] */
  6723. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6724. /*! other exports [not provided] [no usage info] */
  6725. /*! runtime requirements: __webpack_exports__ */
  6726. /***/ ((__unused_webpack_module, exports) => {
  6727. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6728. exports.StringArrayCustomNode = void 0;
  6729. var StringArrayCustomNode;
  6730. (function (StringArrayCustomNode) {
  6731. StringArrayCustomNode["StringArrayCallNode"] = "StringArrayCallNode";
  6732. StringArrayCustomNode["StringArrayScopeCallsWrapperFunctionNode"] = "StringArrayScopeCallsWrapperFunctionNode";
  6733. StringArrayCustomNode["StringArrayScopeCallsWrapperVariableNode"] = "StringArrayScopeCallsWrapperVariableNode";
  6734. })(StringArrayCustomNode = exports.StringArrayCustomNode || (exports.StringArrayCustomNode = {}));
  6735. /***/ }),
  6736. /***/ "./src/enums/custom-nodes/string-array-index-nodes/StringArrayIndexNode.ts":
  6737. /*!*********************************************************************************!*\
  6738. !*** ./src/enums/custom-nodes/string-array-index-nodes/StringArrayIndexNode.ts ***!
  6739. \*********************************************************************************/
  6740. /*! flagged exports */
  6741. /*! export StringArrayIndexNode [provided] [no usage info] [missing usage info prevents renaming] */
  6742. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6743. /*! other exports [not provided] [no usage info] */
  6744. /*! runtime requirements: __webpack_exports__ */
  6745. /***/ ((__unused_webpack_module, exports) => {
  6746. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6747. exports.StringArrayIndexNode = void 0;
  6748. var StringArrayIndexNode;
  6749. (function (StringArrayIndexNode) {
  6750. StringArrayIndexNode["StringArrayHexadecimalNumberIndexNode"] = "StringArrayHexadecimalNumberIndexNode";
  6751. StringArrayIndexNode["StringArrayHexadecimalNumericStringIndexNode"] = "StringArrayHexadecimalNumericStringIndexNode";
  6752. })(StringArrayIndexNode = exports.StringArrayIndexNode || (exports.StringArrayIndexNode = {}));
  6753. /***/ }),
  6754. /***/ "./src/enums/event-emitters/ObfuscationEvent.ts":
  6755. /*!******************************************************!*\
  6756. !*** ./src/enums/event-emitters/ObfuscationEvent.ts ***!
  6757. \******************************************************/
  6758. /*! flagged exports */
  6759. /*! export ObfuscationEvent [provided] [no usage info] [missing usage info prevents renaming] */
  6760. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6761. /*! other exports [not provided] [no usage info] */
  6762. /*! runtime requirements: __webpack_exports__ */
  6763. /***/ ((__unused_webpack_module, exports) => {
  6764. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6765. exports.ObfuscationEvent = void 0;
  6766. var ObfuscationEvent;
  6767. (function (ObfuscationEvent) {
  6768. ObfuscationEvent["AfterObfuscation"] = "afterObfuscation";
  6769. ObfuscationEvent["BeforeObfuscation"] = "beforeObfuscation";
  6770. })(ObfuscationEvent = exports.ObfuscationEvent || (exports.ObfuscationEvent = {}));
  6771. /***/ }),
  6772. /***/ "./src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts":
  6773. /*!**************************************************************************************!*\
  6774. !*** ./src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts ***!
  6775. \**************************************************************************************/
  6776. /*! flagged exports */
  6777. /*! export IdentifierNamesGenerator [provided] [no usage info] [missing usage info prevents renaming] */
  6778. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6779. /*! other exports [not provided] [no usage info] */
  6780. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  6781. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  6782. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6783. exports.IdentifierNamesGenerator = void 0;
  6784. const Utils_1 = __webpack_require__(/*! ../../../utils/Utils */ "./src/utils/Utils.ts");
  6785. exports.IdentifierNamesGenerator = Utils_1.Utils.makeEnum({
  6786. DictionaryIdentifierNamesGenerator: 'dictionary',
  6787. HexadecimalIdentifierNamesGenerator: 'hexadecimal',
  6788. MangledIdentifierNamesGenerator: 'mangled',
  6789. MangledShuffledIdentifierNamesGenerator: 'mangled-shuffled'
  6790. });
  6791. /***/ }),
  6792. /***/ "./src/enums/logger/LoggingMessage.ts":
  6793. /*!********************************************!*\
  6794. !*** ./src/enums/logger/LoggingMessage.ts ***!
  6795. \********************************************/
  6796. /*! flagged exports */
  6797. /*! export LoggingMessage [provided] [no usage info] [missing usage info prevents renaming] */
  6798. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6799. /*! other exports [not provided] [no usage info] */
  6800. /*! runtime requirements: __webpack_exports__ */
  6801. /***/ ((__unused_webpack_module, exports) => {
  6802. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6803. exports.LoggingMessage = void 0;
  6804. var LoggingMessage;
  6805. (function (LoggingMessage) {
  6806. LoggingMessage["EmptySourceCode"] = "Empty source code. Obfuscation canceled...";
  6807. LoggingMessage["ObfuscationCompleted"] = "Obfuscation completed. Total time: %s sec.";
  6808. LoggingMessage["ObfuscationStarted"] = "Obfuscation started...";
  6809. LoggingMessage["RandomGeneratorSeed"] = "Random generator seed: %s...";
  6810. LoggingMessage["CodeTransformationStage"] = "Code transformation stage: %s...";
  6811. LoggingMessage["NodeTransformationStage"] = "AST transformation stage: %s...";
  6812. LoggingMessage["Version"] = "Version: %s";
  6813. })(LoggingMessage = exports.LoggingMessage || (exports.LoggingMessage = {}));
  6814. /***/ }),
  6815. /***/ "./src/enums/logger/LoggingPrefix.ts":
  6816. /*!*******************************************!*\
  6817. !*** ./src/enums/logger/LoggingPrefix.ts ***!
  6818. \*******************************************/
  6819. /*! flagged exports */
  6820. /*! export LoggingPrefix [provided] [no usage info] [missing usage info prevents renaming] */
  6821. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6822. /*! other exports [not provided] [no usage info] */
  6823. /*! runtime requirements: __webpack_exports__ */
  6824. /***/ ((__unused_webpack_module, exports) => {
  6825. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6826. exports.LoggingPrefix = void 0;
  6827. var LoggingPrefix;
  6828. (function (LoggingPrefix) {
  6829. LoggingPrefix["Base"] = "[javascript-obfuscator]";
  6830. LoggingPrefix["CLI"] = "[javascript-obfuscator-cli]";
  6831. })(LoggingPrefix = exports.LoggingPrefix || (exports.LoggingPrefix = {}));
  6832. /***/ }),
  6833. /***/ "./src/enums/node-transformers/NodeTransformationStage.ts":
  6834. /*!****************************************************************!*\
  6835. !*** ./src/enums/node-transformers/NodeTransformationStage.ts ***!
  6836. \****************************************************************/
  6837. /*! flagged exports */
  6838. /*! export NodeTransformationStage [provided] [no usage info] [missing usage info prevents renaming] */
  6839. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6840. /*! other exports [not provided] [no usage info] */
  6841. /*! runtime requirements: __webpack_exports__ */
  6842. /***/ ((__unused_webpack_module, exports) => {
  6843. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6844. exports.NodeTransformationStage = void 0;
  6845. var NodeTransformationStage;
  6846. (function (NodeTransformationStage) {
  6847. NodeTransformationStage["ControlFlowFlattening"] = "ControlFlowFlattening";
  6848. NodeTransformationStage["Converting"] = "Converting";
  6849. NodeTransformationStage["DeadCodeInjection"] = "DeadCodeInjection";
  6850. NodeTransformationStage["Finalizing"] = "Finalizing";
  6851. NodeTransformationStage["Initializing"] = "Initializing";
  6852. NodeTransformationStage["Preparing"] = "Preparing";
  6853. NodeTransformationStage["RenameIdentifiers"] = "RenameIdentifiers";
  6854. NodeTransformationStage["RenameProperties"] = "RenameProperties";
  6855. NodeTransformationStage["Simplifying"] = "Simplifying";
  6856. NodeTransformationStage["StringArray"] = "StringArray";
  6857. })(NodeTransformationStage = exports.NodeTransformationStage || (exports.NodeTransformationStage = {}));
  6858. /***/ }),
  6859. /***/ "./src/enums/node-transformers/NodeTransformer.ts":
  6860. /*!********************************************************!*\
  6861. !*** ./src/enums/node-transformers/NodeTransformer.ts ***!
  6862. \********************************************************/
  6863. /*! flagged exports */
  6864. /*! export NodeTransformer [provided] [no usage info] [missing usage info prevents renaming] */
  6865. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6866. /*! other exports [not provided] [no usage info] */
  6867. /*! runtime requirements: __webpack_exports__ */
  6868. /***/ ((__unused_webpack_module, exports) => {
  6869. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6870. exports.NodeTransformer = void 0;
  6871. var NodeTransformer;
  6872. (function (NodeTransformer) {
  6873. NodeTransformer["BooleanLiteralTransformer"] = "BooleanLiteralTransformer";
  6874. NodeTransformer["BlockStatementControlFlowTransformer"] = "BlockStatementControlFlowTransformer";
  6875. NodeTransformer["BlockStatementSimplifyTransformer"] = "BlockStatementSimplifyTransformer";
  6876. NodeTransformer["CommentsTransformer"] = "CommentsTransformer";
  6877. NodeTransformer["CustomCodeHelpersTransformer"] = "CustomCodeHelpersTransformer";
  6878. NodeTransformer["DeadCodeInjectionTransformer"] = "DeadCodeInjectionTransformer";
  6879. NodeTransformer["EscapeSequenceTransformer"] = "EscapeSequenceTransformer";
  6880. NodeTransformer["EvalCallExpressionTransformer"] = "EvalCallExpressionTransformer";
  6881. NodeTransformer["ExportSpecifierTransformer"] = "ExportSpecifierTransformer";
  6882. NodeTransformer["ExpressionStatementsMergeTransformer"] = "ExpressionStatementsMergeTransformer";
  6883. NodeTransformer["FunctionControlFlowTransformer"] = "FunctionControlFlowTransformer";
  6884. NodeTransformer["IfStatementSimplifyTransformer"] = "IfStatementSimplifyTransformer";
  6885. NodeTransformer["LabeledStatementTransformer"] = "LabeledStatementTransformer";
  6886. NodeTransformer["MemberExpressionTransformer"] = "MemberExpressionTransformer";
  6887. NodeTransformer["MetadataTransformer"] = "MetadataTransformer";
  6888. NodeTransformer["MethodDefinitionTransformer"] = "MethodDefinitionTransformer";
  6889. NodeTransformer["NumberLiteralTransformer"] = "NumberLiteralTransformer";
  6890. NodeTransformer["NumberToNumericalExpressionTransformer"] = "NumberToNumericalExpressionTransformer";
  6891. NodeTransformer["ObfuscatingGuardsTransformer"] = "ObfuscatingGuardsTransformer";
  6892. NodeTransformer["ObjectExpressionKeysTransformer"] = "ObjectExpressionKeysTransformer";
  6893. NodeTransformer["ObjectExpressionTransformer"] = "ObjectExpressionTransformer";
  6894. NodeTransformer["ObjectPatternPropertiesTransformer"] = "ObjectPatternPropertiesTransformer";
  6895. NodeTransformer["ParentificationTransformer"] = "ParentificationTransformer";
  6896. NodeTransformer["RenamePropertiesTransformer"] = "RenamePropertiesTransformer";
  6897. NodeTransformer["ScopeIdentifiersTransformer"] = "ScopeIdentifiersTransformer";
  6898. NodeTransformer["ScopeThroughIdentifiersTransformer"] = "ScopeThroughIdentifiersTransformer";
  6899. NodeTransformer["SplitStringTransformer"] = "SplitStringTransformer";
  6900. NodeTransformer["StringArrayTransformer"] = "StringArrayTransformer";
  6901. NodeTransformer["StringArrayScopeCallsWrapperTransformer"] = "StringArrayScopeCallsWrapperTransformer";
  6902. NodeTransformer["TemplateLiteralTransformer"] = "TemplateLiteralTransformer";
  6903. NodeTransformer["VariableDeclarationsMergeTransformer"] = "VariableDeclarationsMergeTransformer";
  6904. NodeTransformer["VariablePreserveTransformer"] = "VariablePreserveTransformer";
  6905. })(NodeTransformer = exports.NodeTransformer || (exports.NodeTransformer = {}));
  6906. /***/ }),
  6907. /***/ "./src/enums/node-transformers/VisitorDirection.ts":
  6908. /*!*********************************************************!*\
  6909. !*** ./src/enums/node-transformers/VisitorDirection.ts ***!
  6910. \*********************************************************/
  6911. /*! flagged exports */
  6912. /*! export VisitorDirection [provided] [no usage info] [missing usage info prevents renaming] */
  6913. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6914. /*! other exports [not provided] [no usage info] */
  6915. /*! runtime requirements: __webpack_exports__ */
  6916. /***/ ((__unused_webpack_module, exports) => {
  6917. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6918. exports.VisitorDirection = void 0;
  6919. var VisitorDirection;
  6920. (function (VisitorDirection) {
  6921. VisitorDirection["Enter"] = "enter";
  6922. VisitorDirection["Leave"] = "leave";
  6923. })(VisitorDirection = exports.VisitorDirection || (exports.VisitorDirection = {}));
  6924. /***/ }),
  6925. /***/ "./src/enums/node-transformers/control-flow-transformers/control-flow-replacers/ControlFlowReplacer.ts":
  6926. /*!*************************************************************************************************************!*\
  6927. !*** ./src/enums/node-transformers/control-flow-transformers/control-flow-replacers/ControlFlowReplacer.ts ***!
  6928. \*************************************************************************************************************/
  6929. /*! flagged exports */
  6930. /*! export ControlFlowReplacer [provided] [no usage info] [missing usage info prevents renaming] */
  6931. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6932. /*! other exports [not provided] [no usage info] */
  6933. /*! runtime requirements: __webpack_exports__ */
  6934. /***/ ((__unused_webpack_module, exports) => {
  6935. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6936. exports.ControlFlowReplacer = void 0;
  6937. var ControlFlowReplacer;
  6938. (function (ControlFlowReplacer) {
  6939. ControlFlowReplacer["BinaryExpressionControlFlowReplacer"] = "BinaryExpressionControlFlowReplacer";
  6940. ControlFlowReplacer["CallExpressionControlFlowReplacer"] = "CallExpressionControlFlowReplacer";
  6941. ControlFlowReplacer["LogicalExpressionControlFlowReplacer"] = "LogicalExpressionControlFlowReplacer";
  6942. ControlFlowReplacer["StringLiteralControlFlowReplacer"] = "StringLiteralControlFlowReplacer";
  6943. })(ControlFlowReplacer = exports.ControlFlowReplacer || (exports.ControlFlowReplacer = {}));
  6944. /***/ }),
  6945. /***/ "./src/enums/node-transformers/converting-transformers/properties-extractors/ObjectExpressionExtractor.ts":
  6946. /*!****************************************************************************************************************!*\
  6947. !*** ./src/enums/node-transformers/converting-transformers/properties-extractors/ObjectExpressionExtractor.ts ***!
  6948. \****************************************************************************************************************/
  6949. /*! flagged exports */
  6950. /*! export ObjectExpressionExtractor [provided] [no usage info] [missing usage info prevents renaming] */
  6951. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6952. /*! other exports [not provided] [no usage info] */
  6953. /*! runtime requirements: __webpack_exports__ */
  6954. /***/ ((__unused_webpack_module, exports) => {
  6955. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6956. exports.ObjectExpressionExtractor = void 0;
  6957. var ObjectExpressionExtractor;
  6958. (function (ObjectExpressionExtractor) {
  6959. ObjectExpressionExtractor["BasePropertiesExtractor"] = "BasePropertiesExtractor";
  6960. ObjectExpressionExtractor["ObjectExpressionToVariableDeclarationExtractor"] = "ObjectExpressionToVariableDeclarationExtractor";
  6961. })(ObjectExpressionExtractor = exports.ObjectExpressionExtractor || (exports.ObjectExpressionExtractor = {}));
  6962. /***/ }),
  6963. /***/ "./src/enums/node-transformers/preparing-transformers/obfuscating-guards/ObfuscatingGuard.ts":
  6964. /*!***************************************************************************************************!*\
  6965. !*** ./src/enums/node-transformers/preparing-transformers/obfuscating-guards/ObfuscatingGuard.ts ***!
  6966. \***************************************************************************************************/
  6967. /*! flagged exports */
  6968. /*! export ObfuscatingGuard [provided] [no usage info] [missing usage info prevents renaming] */
  6969. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6970. /*! other exports [not provided] [no usage info] */
  6971. /*! runtime requirements: __webpack_exports__ */
  6972. /***/ ((__unused_webpack_module, exports) => {
  6973. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6974. exports.ObfuscatingGuard = void 0;
  6975. var ObfuscatingGuard;
  6976. (function (ObfuscatingGuard) {
  6977. ObfuscatingGuard["BlackListObfuscatingGuard"] = "BlackListObfuscatingGuard";
  6978. ObfuscatingGuard["ConditionalCommentObfuscatingGuard"] = "ConditionalCommentObfuscatingGuard";
  6979. ObfuscatingGuard["ForceTransformStringObfuscatingGuard"] = "ForceTransformStringObfuscatingGuard";
  6980. ObfuscatingGuard["IgnoredRequireImportObfuscatingGuard"] = "IgnoredRequireImportObfuscatingGuard";
  6981. ObfuscatingGuard["ReservedStringObfuscatingGuard"] = "ReservedStringObfuscatingGuard";
  6982. })(ObfuscatingGuard = exports.ObfuscatingGuard || (exports.ObfuscatingGuard = {}));
  6983. /***/ }),
  6984. /***/ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts":
  6985. /*!**************************************************************************************!*\
  6986. !*** ./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts ***!
  6987. \**************************************************************************************/
  6988. /*! flagged exports */
  6989. /*! export StringArrayEncoding [provided] [no usage info] [missing usage info prevents renaming] */
  6990. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  6991. /*! other exports [not provided] [no usage info] */
  6992. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  6993. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  6994. Object.defineProperty(exports, "__esModule", ({ value: true }));
  6995. exports.StringArrayEncoding = void 0;
  6996. const Utils_1 = __webpack_require__(/*! ../../../utils/Utils */ "./src/utils/Utils.ts");
  6997. exports.StringArrayEncoding = Utils_1.Utils.makeEnum({
  6998. None: 'none',
  6999. Base64: 'base64',
  7000. Rc4: 'rc4'
  7001. });
  7002. /***/ }),
  7003. /***/ "./src/enums/node-transformers/string-array-transformers/StringArrayIndexesType.ts":
  7004. /*!*****************************************************************************************!*\
  7005. !*** ./src/enums/node-transformers/string-array-transformers/StringArrayIndexesType.ts ***!
  7006. \*****************************************************************************************/
  7007. /*! flagged exports */
  7008. /*! export StringArrayIndexesType [provided] [no usage info] [missing usage info prevents renaming] */
  7009. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7010. /*! other exports [not provided] [no usage info] */
  7011. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  7012. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  7013. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7014. exports.StringArrayIndexesType = void 0;
  7015. const Utils_1 = __webpack_require__(/*! ../../../utils/Utils */ "./src/utils/Utils.ts");
  7016. exports.StringArrayIndexesType = Utils_1.Utils.makeEnum({
  7017. HexadecimalNumber: 'hexadecimal-number',
  7018. HexadecimalNumericString: 'hexadecimal-numeric-string'
  7019. });
  7020. /***/ }),
  7021. /***/ "./src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts":
  7022. /*!******************************************************************************************!*\
  7023. !*** ./src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts ***!
  7024. \******************************************************************************************/
  7025. /*! flagged exports */
  7026. /*! export StringArrayWrappersType [provided] [no usage info] [missing usage info prevents renaming] */
  7027. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7028. /*! other exports [not provided] [no usage info] */
  7029. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  7030. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  7031. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7032. exports.StringArrayWrappersType = void 0;
  7033. const Utils_1 = __webpack_require__(/*! ../../../utils/Utils */ "./src/utils/Utils.ts");
  7034. exports.StringArrayWrappersType = Utils_1.Utils.makeEnum({
  7035. Variable: 'variable',
  7036. Function: 'function',
  7037. });
  7038. /***/ }),
  7039. /***/ "./src/enums/node/NodeType.ts":
  7040. /*!************************************!*\
  7041. !*** ./src/enums/node/NodeType.ts ***!
  7042. \************************************/
  7043. /*! flagged exports */
  7044. /*! export NodeType [provided] [no usage info] [missing usage info prevents renaming] */
  7045. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7046. /*! other exports [not provided] [no usage info] */
  7047. /*! runtime requirements: __webpack_exports__ */
  7048. /***/ ((__unused_webpack_module, exports) => {
  7049. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7050. exports.NodeType = void 0;
  7051. var NodeType;
  7052. (function (NodeType) {
  7053. NodeType["ArrayExpression"] = "ArrayExpression";
  7054. NodeType["ArrayPattern"] = "ArrayPattern";
  7055. NodeType["ArrowFunctionExpression"] = "ArrowFunctionExpression";
  7056. NodeType["AssignmentExpression"] = "AssignmentExpression";
  7057. NodeType["AssignmentPattern"] = "AssignmentPattern";
  7058. NodeType["AwaitExpression"] = "AwaitExpression";
  7059. NodeType["BinaryExpression"] = "BinaryExpression";
  7060. NodeType["BlockStatement"] = "BlockStatement";
  7061. NodeType["BreakStatement"] = "BreakStatement";
  7062. NodeType["CallExpression"] = "CallExpression";
  7063. NodeType["CatchClause"] = "CatchClause";
  7064. NodeType["ChainExpression"] = "ChainExpression";
  7065. NodeType["ClassDeclaration"] = "ClassDeclaration";
  7066. NodeType["ConditionalExpression"] = "ConditionalExpression";
  7067. NodeType["ContinueStatement"] = "ContinueStatement";
  7068. NodeType["ExportAllDeclaration"] = "ExportAllDeclaration";
  7069. NodeType["ExportNamedDeclaration"] = "ExportNamedDeclaration";
  7070. NodeType["ExportSpecifier"] = "ExportSpecifier";
  7071. NodeType["ExpressionStatement"] = "ExpressionStatement";
  7072. NodeType["ForStatement"] = "ForStatement";
  7073. NodeType["ForInStatement"] = "ForInStatement";
  7074. NodeType["ForOfStatement"] = "ForOfStatement";
  7075. NodeType["FunctionDeclaration"] = "FunctionDeclaration";
  7076. NodeType["FunctionExpression"] = "FunctionExpression";
  7077. NodeType["Identifier"] = "Identifier";
  7078. NodeType["IfStatement"] = "IfStatement";
  7079. NodeType["ImportDeclaration"] = "ImportDeclaration";
  7080. NodeType["ImportDefaultSpecifier"] = "ImportDefaultSpecifier";
  7081. NodeType["ImportNamespaceSpecifier"] = "ImportNamespaceSpecifier";
  7082. NodeType["ImportSpecifier"] = "ImportSpecifier";
  7083. NodeType["LabeledStatement"] = "LabeledStatement";
  7084. NodeType["Literal"] = "Literal";
  7085. NodeType["LogicalExpression"] = "LogicalExpression";
  7086. NodeType["MemberExpression"] = "MemberExpression";
  7087. NodeType["MethodDefinition"] = "MethodDefinition";
  7088. NodeType["ObjectExpression"] = "ObjectExpression";
  7089. NodeType["ObjectPattern"] = "ObjectPattern";
  7090. NodeType["Program"] = "Program";
  7091. NodeType["Property"] = "Property";
  7092. NodeType["RestElement"] = "RestElement";
  7093. NodeType["ReturnStatement"] = "ReturnStatement";
  7094. NodeType["SequenceExpression"] = "SequenceExpression";
  7095. NodeType["SpreadElement"] = "SpreadElement";
  7096. NodeType["Super"] = "Super";
  7097. NodeType["SwitchCase"] = "SwitchCase";
  7098. NodeType["SwitchStatement"] = "SwitchStatement";
  7099. NodeType["TaggedTemplateExpression"] = "TaggedTemplateExpression";
  7100. NodeType["TemplateElement"] = "TemplateElement";
  7101. NodeType["TemplateLiteral"] = "TemplateLiteral";
  7102. NodeType["ThrowStatement"] = "ThrowStatement";
  7103. NodeType["TryStatement"] = "TryStatement";
  7104. NodeType["UnaryExpression"] = "UnaryExpression";
  7105. NodeType["UpdateExpression"] = "UpdateExpression";
  7106. NodeType["VariableDeclaration"] = "VariableDeclaration";
  7107. NodeType["VariableDeclarator"] = "VariableDeclarator";
  7108. NodeType["WhileStatement"] = "WhileStatement";
  7109. NodeType["YieldExpression"] = "YieldExpression";
  7110. })(NodeType = exports.NodeType || (exports.NodeType = {}));
  7111. /***/ }),
  7112. /***/ "./src/enums/node/ObfuscatingGuardResult.ts":
  7113. /*!**************************************************!*\
  7114. !*** ./src/enums/node/ObfuscatingGuardResult.ts ***!
  7115. \**************************************************/
  7116. /*! flagged exports */
  7117. /*! export ObfuscatingGuardResult [provided] [no usage info] [missing usage info prevents renaming] */
  7118. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7119. /*! other exports [not provided] [no usage info] */
  7120. /*! runtime requirements: __webpack_exports__ */
  7121. /***/ ((__unused_webpack_module, exports) => {
  7122. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7123. exports.ObfuscatingGuardResult = void 0;
  7124. var ObfuscatingGuardResult;
  7125. (function (ObfuscatingGuardResult) {
  7126. ObfuscatingGuardResult["ForceTransform"] = "ForceTransform";
  7127. ObfuscatingGuardResult["Ignore"] = "Ignore";
  7128. ObfuscatingGuardResult["Transform"] = "Transform";
  7129. })(ObfuscatingGuardResult = exports.ObfuscatingGuardResult || (exports.ObfuscatingGuardResult = {}));
  7130. /***/ }),
  7131. /***/ "./src/enums/options/presets/OptionsPreset.ts":
  7132. /*!****************************************************!*\
  7133. !*** ./src/enums/options/presets/OptionsPreset.ts ***!
  7134. \****************************************************/
  7135. /*! flagged exports */
  7136. /*! export OptionsPreset [provided] [no usage info] [missing usage info prevents renaming] */
  7137. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7138. /*! other exports [not provided] [no usage info] */
  7139. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  7140. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  7141. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7142. exports.OptionsPreset = void 0;
  7143. const Utils_1 = __webpack_require__(/*! ../../../utils/Utils */ "./src/utils/Utils.ts");
  7144. exports.OptionsPreset = Utils_1.Utils.makeEnum({
  7145. Default: 'default',
  7146. LowObfuscation: 'low-obfuscation',
  7147. MediumObfuscation: 'medium-obfuscation',
  7148. HighObfuscation: 'high-obfuscation'
  7149. });
  7150. /***/ }),
  7151. /***/ "./src/enums/source-map/SourceMapMode.ts":
  7152. /*!***********************************************!*\
  7153. !*** ./src/enums/source-map/SourceMapMode.ts ***!
  7154. \***********************************************/
  7155. /*! flagged exports */
  7156. /*! export SourceMapMode [provided] [no usage info] [missing usage info prevents renaming] */
  7157. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7158. /*! other exports [not provided] [no usage info] */
  7159. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  7160. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  7161. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7162. exports.SourceMapMode = void 0;
  7163. const Utils_1 = __webpack_require__(/*! ../../utils/Utils */ "./src/utils/Utils.ts");
  7164. exports.SourceMapMode = Utils_1.Utils.makeEnum({
  7165. Inline: 'inline',
  7166. Separate: 'separate'
  7167. });
  7168. /***/ }),
  7169. /***/ "./src/event-emitters/ObfuscationEventEmitter.ts":
  7170. /*!*******************************************************!*\
  7171. !*** ./src/event-emitters/ObfuscationEventEmitter.ts ***!
  7172. \*******************************************************/
  7173. /*! unknown exports (runtime-defined) */
  7174. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  7175. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  7176. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  7177. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  7178. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  7179. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  7180. return c > 3 && r && Object.defineProperty(target, key, r), r;
  7181. };
  7182. var __importDefault = (this && this.__importDefault) || function (mod) {
  7183. return (mod && mod.__esModule) ? mod : { "default": mod };
  7184. };
  7185. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7186. exports.ObfuscationEventEmitter = void 0;
  7187. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  7188. const eventemitter3_1 = __importDefault(__webpack_require__(/*! eventemitter3 */ "eventemitter3"));
  7189. inversify_1.decorate(inversify_1.injectable(), eventemitter3_1.default);
  7190. let ObfuscationEventEmitter = class ObfuscationEventEmitter extends eventemitter3_1.default {
  7191. };
  7192. ObfuscationEventEmitter = __decorate([
  7193. inversify_1.injectable()
  7194. ], ObfuscationEventEmitter);
  7195. exports.ObfuscationEventEmitter = ObfuscationEventEmitter;
  7196. /***/ }),
  7197. /***/ "./src/generators/identifier-names-generators/AbstractIdentifierNamesGenerator.ts":
  7198. /*!****************************************************************************************!*\
  7199. !*** ./src/generators/identifier-names-generators/AbstractIdentifierNamesGenerator.ts ***!
  7200. \****************************************************************************************/
  7201. /*! unknown exports (runtime-defined) */
  7202. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  7203. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  7204. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  7205. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  7206. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  7207. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  7208. return c > 3 && r && Object.defineProperty(target, key, r), r;
  7209. };
  7210. var __metadata = (this && this.__metadata) || function (k, v) {
  7211. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  7212. };
  7213. var __param = (this && this.__param) || function (paramIndex, decorator) {
  7214. return function (target, key) { decorator(target, key, paramIndex); }
  7215. };
  7216. var _a, _b;
  7217. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7218. exports.AbstractIdentifierNamesGenerator = void 0;
  7219. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  7220. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  7221. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  7222. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  7223. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  7224. let AbstractIdentifierNamesGenerator = class AbstractIdentifierNamesGenerator {
  7225. constructor(randomGenerator, options) {
  7226. this.preservedNamesSet = new Set();
  7227. this.lexicalScopesPreservedNamesMap = new Map();
  7228. this.randomGenerator = randomGenerator;
  7229. this.options = options;
  7230. }
  7231. generate(lexicalScopeNode, nameLength) {
  7232. return NodeGuards_1.NodeGuards.isProgramNode(lexicalScopeNode)
  7233. ? this.generateForGlobalScope()
  7234. : this.generateForLexicalScope(lexicalScopeNode);
  7235. }
  7236. preserveName(name) {
  7237. this.preservedNamesSet.add(name);
  7238. }
  7239. preserveNameForLexicalScope(name, lexicalScopeNode) {
  7240. var _a;
  7241. const preservedNamesForLexicalScopeSet = (_a = this.lexicalScopesPreservedNamesMap.get(lexicalScopeNode)) !== null && _a !== void 0 ? _a : new Set();
  7242. preservedNamesForLexicalScopeSet.add(name);
  7243. this.lexicalScopesPreservedNamesMap.set(lexicalScopeNode, preservedNamesForLexicalScopeSet);
  7244. }
  7245. isValidIdentifierName(name) {
  7246. return this.notReservedName(name) && !this.preservedNamesSet.has(name);
  7247. }
  7248. isValidIdentifierNameInLexicalScopes(name, lexicalScopeNodes) {
  7249. var _a;
  7250. if (!this.isValidIdentifierName(name)) {
  7251. return false;
  7252. }
  7253. for (const lexicalScope of lexicalScopeNodes) {
  7254. const preservedNamesForLexicalScopeSet = (_a = this.lexicalScopesPreservedNamesMap.get(lexicalScope)) !== null && _a !== void 0 ? _a : null;
  7255. if (!preservedNamesForLexicalScopeSet) {
  7256. continue;
  7257. }
  7258. if (preservedNamesForLexicalScopeSet.has(name)) {
  7259. return false;
  7260. }
  7261. }
  7262. return true;
  7263. }
  7264. notReservedName(name) {
  7265. return this.options.reservedNames.length
  7266. ? !this.options.reservedNames.some((reservedName) => new RegExp(reservedName, 'g').exec(name) !== null)
  7267. : true;
  7268. }
  7269. };
  7270. AbstractIdentifierNamesGenerator = __decorate([
  7271. inversify_1.injectable(),
  7272. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  7273. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  7274. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  7275. ], AbstractIdentifierNamesGenerator);
  7276. exports.AbstractIdentifierNamesGenerator = AbstractIdentifierNamesGenerator;
  7277. /***/ }),
  7278. /***/ "./src/generators/identifier-names-generators/DictionaryIdentifierNamesGenerator.ts":
  7279. /*!******************************************************************************************!*\
  7280. !*** ./src/generators/identifier-names-generators/DictionaryIdentifierNamesGenerator.ts ***!
  7281. \******************************************************************************************/
  7282. /*! unknown exports (runtime-defined) */
  7283. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  7284. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  7285. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  7286. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  7287. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  7288. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  7289. return c > 3 && r && Object.defineProperty(target, key, r), r;
  7290. };
  7291. var __metadata = (this && this.__metadata) || function (k, v) {
  7292. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  7293. };
  7294. var __param = (this && this.__param) || function (paramIndex, decorator) {
  7295. return function (target, key) { decorator(target, key, paramIndex); }
  7296. };
  7297. var DictionaryIdentifierNamesGenerator_1, _a, _b, _c;
  7298. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7299. exports.DictionaryIdentifierNamesGenerator = void 0;
  7300. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  7301. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  7302. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  7303. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  7304. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  7305. const AbstractIdentifierNamesGenerator_1 = __webpack_require__(/*! ./AbstractIdentifierNamesGenerator */ "./src/generators/identifier-names-generators/AbstractIdentifierNamesGenerator.ts");
  7306. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  7307. let DictionaryIdentifierNamesGenerator = DictionaryIdentifierNamesGenerator_1 = class DictionaryIdentifierNamesGenerator extends AbstractIdentifierNamesGenerator_1.AbstractIdentifierNamesGenerator {
  7308. constructor(randomGenerator, options, arrayUtils) {
  7309. super(randomGenerator, options);
  7310. this.arrayUtils = arrayUtils;
  7311. this.identifierNamesSet = new Set(this.getInitialIdentifierNames(this.options.identifiersDictionary));
  7312. this.identifiersIterator = this.identifierNamesSet.values();
  7313. }
  7314. static incrementIdentifierName(identifierName) {
  7315. let newIdentifierName = '';
  7316. let isSuccess = false;
  7317. for (const character of identifierName) {
  7318. if (!isSuccess && character === character.toUpperCase()) {
  7319. newIdentifierName += character.toLowerCase();
  7320. }
  7321. else if (!isSuccess && character === character.toLowerCase()) {
  7322. newIdentifierName += character.toUpperCase();
  7323. isSuccess = true;
  7324. }
  7325. else {
  7326. newIdentifierName += character;
  7327. }
  7328. }
  7329. if (isSuccess) {
  7330. return newIdentifierName;
  7331. }
  7332. return null;
  7333. }
  7334. generateNext() {
  7335. const identifierName = this.generateNewDictionaryName();
  7336. this.preserveName(identifierName);
  7337. return identifierName;
  7338. }
  7339. generateForGlobalScope() {
  7340. const prefix = this.options.identifiersPrefix ?
  7341. `${this.options.identifiersPrefix}`
  7342. : '';
  7343. const identifierName = this.generateNewDictionaryName();
  7344. const identifierNameWithPrefix = `${prefix}${identifierName}`;
  7345. if (!this.isValidIdentifierName(identifierNameWithPrefix)) {
  7346. return this.generateForGlobalScope();
  7347. }
  7348. this.preserveName(identifierNameWithPrefix);
  7349. return identifierNameWithPrefix;
  7350. }
  7351. generateForLexicalScope(lexicalScopeNode) {
  7352. const lexicalScopes = [
  7353. lexicalScopeNode,
  7354. ...NodeLexicalScopeUtils_1.NodeLexicalScopeUtils.getLexicalScopes(lexicalScopeNode)
  7355. ];
  7356. const identifierName = this.generateNewDictionaryName();
  7357. if (!this.isValidIdentifierNameInLexicalScopes(identifierName, lexicalScopes)) {
  7358. return this.generateForLexicalScope(lexicalScopeNode);
  7359. }
  7360. this.preserveNameForLexicalScope(identifierName, lexicalScopeNode);
  7361. return identifierName;
  7362. }
  7363. generateNewDictionaryName() {
  7364. if (!this.identifierNamesSet.size) {
  7365. throw new Error('Too many identifiers in the code, add more words to identifiers dictionary');
  7366. }
  7367. const iteratorResult = this.identifiersIterator.next();
  7368. if (!iteratorResult.done) {
  7369. const identifierName = iteratorResult.value;
  7370. if (!this.isValidIdentifierName(identifierName)) {
  7371. return this.generateNewDictionaryName();
  7372. }
  7373. return iteratorResult.value;
  7374. }
  7375. this.identifierNamesSet = new Set(this.getIncrementedIdentifierNames([...this.identifierNamesSet]));
  7376. this.identifiersIterator = this.identifierNamesSet.values();
  7377. return this.generateNewDictionaryName();
  7378. }
  7379. getInitialIdentifierNames(identifierNames) {
  7380. const formattedIdentifierNames = identifierNames
  7381. .filter(Boolean)
  7382. .map((identifierName) => identifierName.toLowerCase());
  7383. return this.arrayUtils.shuffle(formattedIdentifierNames);
  7384. }
  7385. getIncrementedIdentifierNames(identifierNames) {
  7386. const formattedIdentifierNames = [];
  7387. for (const identifierName of identifierNames) {
  7388. const newIdentifierName = DictionaryIdentifierNamesGenerator_1
  7389. .incrementIdentifierName(identifierName);
  7390. if (newIdentifierName) {
  7391. formattedIdentifierNames.push(newIdentifierName);
  7392. }
  7393. }
  7394. return this.arrayUtils.shuffle(formattedIdentifierNames);
  7395. }
  7396. };
  7397. DictionaryIdentifierNamesGenerator = DictionaryIdentifierNamesGenerator_1 = __decorate([
  7398. inversify_1.injectable(),
  7399. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  7400. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  7401. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  7402. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object, typeof (_c = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _c : Object])
  7403. ], DictionaryIdentifierNamesGenerator);
  7404. exports.DictionaryIdentifierNamesGenerator = DictionaryIdentifierNamesGenerator;
  7405. /***/ }),
  7406. /***/ "./src/generators/identifier-names-generators/HexadecimalIdentifierNamesGenerator.ts":
  7407. /*!*******************************************************************************************!*\
  7408. !*** ./src/generators/identifier-names-generators/HexadecimalIdentifierNamesGenerator.ts ***!
  7409. \*******************************************************************************************/
  7410. /*! unknown exports (runtime-defined) */
  7411. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  7412. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  7413. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  7414. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  7415. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  7416. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  7417. return c > 3 && r && Object.defineProperty(target, key, r), r;
  7418. };
  7419. var __metadata = (this && this.__metadata) || function (k, v) {
  7420. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  7421. };
  7422. var __param = (this && this.__param) || function (paramIndex, decorator) {
  7423. return function (target, key) { decorator(target, key, paramIndex); }
  7424. };
  7425. var HexadecimalIdentifierNamesGenerator_1, _a, _b;
  7426. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7427. exports.HexadecimalIdentifierNamesGenerator = void 0;
  7428. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  7429. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  7430. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  7431. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  7432. const AbstractIdentifierNamesGenerator_1 = __webpack_require__(/*! ./AbstractIdentifierNamesGenerator */ "./src/generators/identifier-names-generators/AbstractIdentifierNamesGenerator.ts");
  7433. const NumberUtils_1 = __webpack_require__(/*! ../../utils/NumberUtils */ "./src/utils/NumberUtils.ts");
  7434. const Utils_1 = __webpack_require__(/*! ../../utils/Utils */ "./src/utils/Utils.ts");
  7435. let HexadecimalIdentifierNamesGenerator = HexadecimalIdentifierNamesGenerator_1 = class HexadecimalIdentifierNamesGenerator extends AbstractIdentifierNamesGenerator_1.AbstractIdentifierNamesGenerator {
  7436. constructor(randomGenerator, options) {
  7437. super(randomGenerator, options);
  7438. }
  7439. generateNext(nameLength) {
  7440. const rangeMinInteger = 10000;
  7441. const rangeMaxInteger = 99999999;
  7442. const randomInteger = this.randomGenerator.getRandomInteger(rangeMinInteger, rangeMaxInteger);
  7443. const hexadecimalNumber = NumberUtils_1.NumberUtils.toHex(randomInteger);
  7444. const prefixLength = Utils_1.Utils.hexadecimalPrefix.length;
  7445. const baseNameLength = (nameLength !== null && nameLength !== void 0 ? nameLength : HexadecimalIdentifierNamesGenerator_1.baseIdentifierNameLength)
  7446. + prefixLength;
  7447. const baseIdentifierName = hexadecimalNumber.slice(0, baseNameLength);
  7448. const identifierName = `_${baseIdentifierName}`;
  7449. if (!this.isValidIdentifierName(identifierName)) {
  7450. return this.generateNext(nameLength);
  7451. }
  7452. this.preserveName(identifierName);
  7453. return identifierName;
  7454. }
  7455. generateForGlobalScope(nameLength) {
  7456. const identifierName = this.generateNext(nameLength);
  7457. return `${this.options.identifiersPrefix}${identifierName}`.replace('__', '_');
  7458. }
  7459. generateForLexicalScope(lexicalScopeNode, nameLength) {
  7460. return this.generateNext(nameLength);
  7461. }
  7462. };
  7463. HexadecimalIdentifierNamesGenerator.baseIdentifierNameLength = 6;
  7464. HexadecimalIdentifierNamesGenerator = HexadecimalIdentifierNamesGenerator_1 = __decorate([
  7465. inversify_1.injectable(),
  7466. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  7467. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  7468. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  7469. ], HexadecimalIdentifierNamesGenerator);
  7470. exports.HexadecimalIdentifierNamesGenerator = HexadecimalIdentifierNamesGenerator;
  7471. /***/ }),
  7472. /***/ "./src/generators/identifier-names-generators/MangledIdentifierNamesGenerator.ts":
  7473. /*!***************************************************************************************!*\
  7474. !*** ./src/generators/identifier-names-generators/MangledIdentifierNamesGenerator.ts ***!
  7475. \***************************************************************************************/
  7476. /*! unknown exports (runtime-defined) */
  7477. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  7478. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  7479. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  7480. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  7481. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  7482. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  7483. return c > 3 && r && Object.defineProperty(target, key, r), r;
  7484. };
  7485. var __metadata = (this && this.__metadata) || function (k, v) {
  7486. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  7487. };
  7488. var __param = (this && this.__param) || function (paramIndex, decorator) {
  7489. return function (target, key) { decorator(target, key, paramIndex); }
  7490. };
  7491. var MangledIdentifierNamesGenerator_1, _a, _b;
  7492. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7493. exports.MangledIdentifierNamesGenerator = void 0;
  7494. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  7495. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  7496. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  7497. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  7498. const NumbersString_1 = __webpack_require__(/*! ../../constants/NumbersString */ "./src/constants/NumbersString.ts");
  7499. const AlphabetString_1 = __webpack_require__(/*! ../../constants/AlphabetString */ "./src/constants/AlphabetString.ts");
  7500. const AlphabetStringUppercase_1 = __webpack_require__(/*! ../../constants/AlphabetStringUppercase */ "./src/constants/AlphabetStringUppercase.ts");
  7501. const AbstractIdentifierNamesGenerator_1 = __webpack_require__(/*! ./AbstractIdentifierNamesGenerator */ "./src/generators/identifier-names-generators/AbstractIdentifierNamesGenerator.ts");
  7502. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  7503. let MangledIdentifierNamesGenerator = MangledIdentifierNamesGenerator_1 = class MangledIdentifierNamesGenerator extends AbstractIdentifierNamesGenerator_1.AbstractIdentifierNamesGenerator {
  7504. constructor(randomGenerator, options) {
  7505. super(randomGenerator, options);
  7506. this.previousMangledName = MangledIdentifierNamesGenerator_1.initMangledNameCharacter;
  7507. }
  7508. generateNext(nameLength) {
  7509. const identifierName = this.generateNewMangledName(this.previousMangledName);
  7510. this.updatePreviousMangledName(identifierName);
  7511. this.preserveName(identifierName);
  7512. return identifierName;
  7513. }
  7514. generateForGlobalScope(nameLength) {
  7515. const prefix = this.options.identifiersPrefix ?
  7516. `${this.options.identifiersPrefix}`
  7517. : '';
  7518. const identifierName = this.generateNewMangledName(this.previousMangledName);
  7519. const identifierNameWithPrefix = `${prefix}${identifierName}`;
  7520. this.updatePreviousMangledName(identifierName);
  7521. if (!this.isValidIdentifierName(identifierNameWithPrefix)) {
  7522. return this.generateForGlobalScope(nameLength);
  7523. }
  7524. this.preserveName(identifierNameWithPrefix);
  7525. return identifierNameWithPrefix;
  7526. }
  7527. generateForLexicalScope(lexicalScopeNode, nameLength) {
  7528. const lexicalScopes = [
  7529. lexicalScopeNode,
  7530. ...NodeLexicalScopeUtils_1.NodeLexicalScopeUtils.getLexicalScopes(lexicalScopeNode)
  7531. ];
  7532. const lastMangledNameForScope = this.getLastMangledNameForScopes(lexicalScopes);
  7533. let identifierName = lastMangledNameForScope;
  7534. do {
  7535. identifierName = this.generateNewMangledName(identifierName);
  7536. } while (!this.isValidIdentifierNameInLexicalScopes(identifierName, lexicalScopes));
  7537. MangledIdentifierNamesGenerator_1.lastMangledNameInScopeMap.set(lexicalScopeNode, identifierName);
  7538. this.updatePreviousMangledName(identifierName);
  7539. this.preserveNameForLexicalScope(identifierName, lexicalScopeNode);
  7540. return identifierName;
  7541. }
  7542. isIncrementedMangledName(nextName, prevName) {
  7543. if (nextName === prevName) {
  7544. return false;
  7545. }
  7546. const nextNameLength = nextName.length;
  7547. const prevNameLength = prevName.length;
  7548. if (nextNameLength !== prevNameLength) {
  7549. return nextNameLength > prevNameLength;
  7550. }
  7551. const nameSequence = this.getNameSequence();
  7552. for (let i = 0; i < nextNameLength; i++) {
  7553. const nextNameCharacter = nextName[i];
  7554. const prevNameCharacter = prevName[i];
  7555. if (nextNameCharacter === prevNameCharacter) {
  7556. continue;
  7557. }
  7558. const indexOfNextNameCharacter = nameSequence.indexOf(nextNameCharacter);
  7559. const indexOfPrevNameCharacter = nameSequence.indexOf(prevNameCharacter);
  7560. return indexOfNextNameCharacter > indexOfPrevNameCharacter;
  7561. }
  7562. throw new Error('Something goes wrong during comparison of mangled names');
  7563. }
  7564. isValidIdentifierName(mangledName) {
  7565. return super.isValidIdentifierName(mangledName)
  7566. && !MangledIdentifierNamesGenerator_1.reservedNamesSet.has(mangledName);
  7567. }
  7568. getNameSequence() {
  7569. return MangledIdentifierNamesGenerator_1.nameSequence;
  7570. }
  7571. updatePreviousMangledName(name) {
  7572. if (!this.isIncrementedMangledName(name, this.previousMangledName)) {
  7573. return;
  7574. }
  7575. this.previousMangledName = name;
  7576. }
  7577. generateNewMangledName(previousMangledName) {
  7578. const generateNewMangledName = (name) => {
  7579. const nameSequence = this.getNameSequence();
  7580. const nameSequenceLength = nameSequence.length;
  7581. const nameLength = name.length;
  7582. const zeroSequence = (num) => {
  7583. return '0'.repeat(num);
  7584. };
  7585. let index = nameLength - 1;
  7586. do {
  7587. const character = name[index];
  7588. const indexInSequence = nameSequence.indexOf(character);
  7589. const lastNameSequenceIndex = nameSequenceLength - 1;
  7590. if (indexInSequence !== lastNameSequenceIndex) {
  7591. const previousNamePart = name.slice(0, index);
  7592. const nextCharacter = nameSequence[indexInSequence + 1];
  7593. const zeroSequenceLength = nameLength - (index + 1);
  7594. const zeroSequenceCharacters = zeroSequence(zeroSequenceLength);
  7595. return previousNamePart + nextCharacter + zeroSequenceCharacters;
  7596. }
  7597. --index;
  7598. } while (index >= 0);
  7599. const firstLetterCharacter = nameSequence[NumbersString_1.numbersString.length];
  7600. return `${firstLetterCharacter}${zeroSequence(nameLength)}`;
  7601. };
  7602. let newMangledName = generateNewMangledName(previousMangledName);
  7603. if (!this.isValidIdentifierName(newMangledName)) {
  7604. newMangledName = this.generateNewMangledName(newMangledName);
  7605. }
  7606. return newMangledName;
  7607. }
  7608. getLastMangledNameForScopes(lexicalScopeNodes) {
  7609. var _a;
  7610. for (const lexicalScope of lexicalScopeNodes) {
  7611. const lastMangledName = (_a = MangledIdentifierNamesGenerator_1.lastMangledNameInScopeMap
  7612. .get(lexicalScope)) !== null && _a !== void 0 ? _a : null;
  7613. if (!lastMangledName) {
  7614. continue;
  7615. }
  7616. return lastMangledName;
  7617. }
  7618. return MangledIdentifierNamesGenerator_1.initMangledNameCharacter;
  7619. }
  7620. };
  7621. MangledIdentifierNamesGenerator.initMangledNameCharacter = '9';
  7622. MangledIdentifierNamesGenerator.lastMangledNameInScopeMap = new WeakMap();
  7623. MangledIdentifierNamesGenerator.nameSequence = [
  7624. ...`${NumbersString_1.numbersString}${AlphabetString_1.alphabetString}${AlphabetStringUppercase_1.alphabetStringUppercase}`
  7625. ];
  7626. MangledIdentifierNamesGenerator.reservedNamesSet = new Set([
  7627. 'byte', 'case', 'char', 'do', 'else', 'enum', 'eval', 'for', 'goto',
  7628. 'if', 'in', 'int', 'let', 'long', 'new', 'null', 'this', 'true', 'try',
  7629. 'var', 'void', 'with'
  7630. ]);
  7631. MangledIdentifierNamesGenerator = MangledIdentifierNamesGenerator_1 = __decorate([
  7632. inversify_1.injectable(),
  7633. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  7634. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  7635. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  7636. ], MangledIdentifierNamesGenerator);
  7637. exports.MangledIdentifierNamesGenerator = MangledIdentifierNamesGenerator;
  7638. /***/ }),
  7639. /***/ "./src/generators/identifier-names-generators/MangledShuffledIdentifierNamesGenerator.ts":
  7640. /*!***********************************************************************************************!*\
  7641. !*** ./src/generators/identifier-names-generators/MangledShuffledIdentifierNamesGenerator.ts ***!
  7642. \***********************************************************************************************/
  7643. /*! unknown exports (runtime-defined) */
  7644. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  7645. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  7646. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  7647. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  7648. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  7649. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  7650. return c > 3 && r && Object.defineProperty(target, key, r), r;
  7651. };
  7652. var __metadata = (this && this.__metadata) || function (k, v) {
  7653. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  7654. };
  7655. var __param = (this && this.__param) || function (paramIndex, decorator) {
  7656. return function (target, key) { decorator(target, key, paramIndex); }
  7657. };
  7658. var MangledShuffledIdentifierNamesGenerator_1, _a, _b, _c;
  7659. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7660. exports.MangledShuffledIdentifierNamesGenerator = void 0;
  7661. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  7662. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  7663. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  7664. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  7665. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  7666. const NumbersString_1 = __webpack_require__(/*! ../../constants/NumbersString */ "./src/constants/NumbersString.ts");
  7667. const AlphabetString_1 = __webpack_require__(/*! ../../constants/AlphabetString */ "./src/constants/AlphabetString.ts");
  7668. const AlphabetStringUppercase_1 = __webpack_require__(/*! ../../constants/AlphabetStringUppercase */ "./src/constants/AlphabetStringUppercase.ts");
  7669. const MangledIdentifierNamesGenerator_1 = __webpack_require__(/*! ./MangledIdentifierNamesGenerator */ "./src/generators/identifier-names-generators/MangledIdentifierNamesGenerator.ts");
  7670. let MangledShuffledIdentifierNamesGenerator = MangledShuffledIdentifierNamesGenerator_1 = class MangledShuffledIdentifierNamesGenerator extends MangledIdentifierNamesGenerator_1.MangledIdentifierNamesGenerator {
  7671. constructor(arrayUtils, randomGenerator, options) {
  7672. super(randomGenerator, options);
  7673. this.arrayUtils = arrayUtils;
  7674. }
  7675. initialize() {
  7676. this.initializeNameSequence([
  7677. ...`${NumbersString_1.numbersString}`,
  7678. ...this.arrayUtils.shuffle([...`${AlphabetString_1.alphabetString}${AlphabetStringUppercase_1.alphabetStringUppercase}`])
  7679. ]);
  7680. }
  7681. initializeNameSequence(nameSequence) {
  7682. if (!this.getNameSequence()) {
  7683. MangledShuffledIdentifierNamesGenerator_1.shuffledNameSequence = nameSequence;
  7684. }
  7685. }
  7686. getNameSequence() {
  7687. return MangledShuffledIdentifierNamesGenerator_1.shuffledNameSequence;
  7688. }
  7689. generateNewMangledName(previousMangledName) {
  7690. return super.generateNewMangledName(previousMangledName);
  7691. }
  7692. };
  7693. __decorate([
  7694. inversify_1.postConstruct(),
  7695. __metadata("design:type", Function),
  7696. __metadata("design:paramtypes", []),
  7697. __metadata("design:returntype", void 0)
  7698. ], MangledShuffledIdentifierNamesGenerator.prototype, "initialize", null);
  7699. MangledShuffledIdentifierNamesGenerator = MangledShuffledIdentifierNamesGenerator_1 = __decorate([
  7700. inversify_1.injectable(),
  7701. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  7702. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  7703. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  7704. __metadata("design:paramtypes", [typeof (_a = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  7705. ], MangledShuffledIdentifierNamesGenerator);
  7706. exports.MangledShuffledIdentifierNamesGenerator = MangledShuffledIdentifierNamesGenerator;
  7707. /***/ }),
  7708. /***/ "./src/interfaces/analyzers/calls-graph-analyzer/ICallsGraphAnalyzer.ts":
  7709. /*!******************************************************************************!*\
  7710. !*** ./src/interfaces/analyzers/calls-graph-analyzer/ICallsGraphAnalyzer.ts ***!
  7711. \******************************************************************************/
  7712. /*! flagged exports */
  7713. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7714. /*! other exports [not provided] [no usage info] */
  7715. /*! runtime requirements: __webpack_exports__ */
  7716. /***/ ((__unused_webpack_module, exports) => {
  7717. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7718. /***/ }),
  7719. /***/ "./src/interfaces/analyzers/calls-graph-analyzer/IPrevailingKindOfVariablesAnalyzer.ts":
  7720. /*!*********************************************************************************************!*\
  7721. !*** ./src/interfaces/analyzers/calls-graph-analyzer/IPrevailingKindOfVariablesAnalyzer.ts ***!
  7722. \*********************************************************************************************/
  7723. /*! flagged exports */
  7724. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7725. /*! other exports [not provided] [no usage info] */
  7726. /*! runtime requirements: __webpack_exports__ */
  7727. /***/ ((__unused_webpack_module, exports) => {
  7728. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7729. /***/ }),
  7730. /***/ "./src/interfaces/analyzers/number-numerical-expression-analyzer/INumberNumericalExpressionAnalyzer.ts":
  7731. /*!*************************************************************************************************************!*\
  7732. !*** ./src/interfaces/analyzers/number-numerical-expression-analyzer/INumberNumericalExpressionAnalyzer.ts ***!
  7733. \*************************************************************************************************************/
  7734. /*! flagged exports */
  7735. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7736. /*! other exports [not provided] [no usage info] */
  7737. /*! runtime requirements: __webpack_exports__ */
  7738. /***/ ((__unused_webpack_module, exports) => {
  7739. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7740. /***/ }),
  7741. /***/ "./src/interfaces/analyzers/scope-analyzer/IScopeAnalyzer.ts":
  7742. /*!*******************************************************************!*\
  7743. !*** ./src/interfaces/analyzers/scope-analyzer/IScopeAnalyzer.ts ***!
  7744. \*******************************************************************/
  7745. /*! flagged exports */
  7746. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7747. /*! other exports [not provided] [no usage info] */
  7748. /*! runtime requirements: __webpack_exports__ */
  7749. /***/ ((__unused_webpack_module, exports) => {
  7750. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7751. /***/ }),
  7752. /***/ "./src/interfaces/analyzers/string-array-storage-analyzer/IStringArrayStorageAnalyzer.ts":
  7753. /*!***********************************************************************************************!*\
  7754. !*** ./src/interfaces/analyzers/string-array-storage-analyzer/IStringArrayStorageAnalyzer.ts ***!
  7755. \***********************************************************************************************/
  7756. /*! flagged exports */
  7757. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7758. /*! other exports [not provided] [no usage info] */
  7759. /*! runtime requirements: __webpack_exports__ */
  7760. /***/ ((__unused_webpack_module, exports) => {
  7761. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7762. /***/ }),
  7763. /***/ "./src/interfaces/code-transformers/ICodeTransformersRunner.ts":
  7764. /*!*********************************************************************!*\
  7765. !*** ./src/interfaces/code-transformers/ICodeTransformersRunner.ts ***!
  7766. \*********************************************************************/
  7767. /*! flagged exports */
  7768. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7769. /*! other exports [not provided] [no usage info] */
  7770. /*! runtime requirements: __webpack_exports__ */
  7771. /***/ ((__unused_webpack_module, exports) => {
  7772. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7773. /***/ }),
  7774. /***/ "./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts":
  7775. /*!**************************************************************************!*\
  7776. !*** ./src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts ***!
  7777. \**************************************************************************/
  7778. /*! flagged exports */
  7779. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7780. /*! other exports [not provided] [no usage info] */
  7781. /*! runtime requirements: __webpack_exports__ */
  7782. /***/ ((__unused_webpack_module, exports) => {
  7783. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7784. /***/ }),
  7785. /***/ "./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts":
  7786. /*!***************************************************************************!*\
  7787. !*** ./src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts ***!
  7788. \***************************************************************************/
  7789. /*! flagged exports */
  7790. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7791. /*! other exports [not provided] [no usage info] */
  7792. /*! runtime requirements: __webpack_exports__ */
  7793. /***/ ((__unused_webpack_module, exports) => {
  7794. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7795. /***/ }),
  7796. /***/ "./src/interfaces/event-emitters/IObfuscationEventEmitter.ts":
  7797. /*!*******************************************************************!*\
  7798. !*** ./src/interfaces/event-emitters/IObfuscationEventEmitter.ts ***!
  7799. \*******************************************************************/
  7800. /*! flagged exports */
  7801. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7802. /*! other exports [not provided] [no usage info] */
  7803. /*! runtime requirements: __webpack_exports__ */
  7804. /***/ ((__unused_webpack_module, exports) => {
  7805. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7806. /***/ }),
  7807. /***/ "./src/interfaces/logger/ILogger.ts":
  7808. /*!******************************************!*\
  7809. !*** ./src/interfaces/logger/ILogger.ts ***!
  7810. \******************************************/
  7811. /*! flagged exports */
  7812. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7813. /*! other exports [not provided] [no usage info] */
  7814. /*! runtime requirements: __webpack_exports__ */
  7815. /***/ ((__unused_webpack_module, exports) => {
  7816. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7817. /***/ }),
  7818. /***/ "./src/interfaces/node-transformers/INodeTransformersRunner.ts":
  7819. /*!*********************************************************************!*\
  7820. !*** ./src/interfaces/node-transformers/INodeTransformersRunner.ts ***!
  7821. \*********************************************************************/
  7822. /*! flagged exports */
  7823. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7824. /*! other exports [not provided] [no usage info] */
  7825. /*! runtime requirements: __webpack_exports__ */
  7826. /***/ ((__unused_webpack_module, exports) => {
  7827. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7828. /***/ }),
  7829. /***/ "./src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer.ts":
  7830. /*!**********************************************************************************************************!*\
  7831. !*** ./src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer.ts ***!
  7832. \**********************************************************************************************************/
  7833. /*! flagged exports */
  7834. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7835. /*! other exports [not provided] [no usage info] */
  7836. /*! runtime requirements: __webpack_exports__ */
  7837. /***/ ((__unused_webpack_module, exports) => {
  7838. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7839. /***/ }),
  7840. /***/ "./src/interfaces/node-transformers/rename-properties-transformers/replacer/IRenamePropertiesReplacer.ts":
  7841. /*!***************************************************************************************************************!*\
  7842. !*** ./src/interfaces/node-transformers/rename-properties-transformers/replacer/IRenamePropertiesReplacer.ts ***!
  7843. \***************************************************************************************************************/
  7844. /*! flagged exports */
  7845. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7846. /*! other exports [not provided] [no usage info] */
  7847. /*! runtime requirements: __webpack_exports__ */
  7848. /***/ ((__unused_webpack_module, exports) => {
  7849. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7850. /***/ }),
  7851. /***/ "./src/interfaces/node/IScopeIdentifiersTraverser.ts":
  7852. /*!***********************************************************!*\
  7853. !*** ./src/interfaces/node/IScopeIdentifiersTraverser.ts ***!
  7854. \***********************************************************/
  7855. /*! flagged exports */
  7856. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7857. /*! other exports [not provided] [no usage info] */
  7858. /*! runtime requirements: __webpack_exports__ */
  7859. /***/ ((__unused_webpack_module, exports) => {
  7860. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7861. /***/ }),
  7862. /***/ "./src/interfaces/options/IOptions.ts":
  7863. /*!********************************************!*\
  7864. !*** ./src/interfaces/options/IOptions.ts ***!
  7865. \********************************************/
  7866. /*! flagged exports */
  7867. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7868. /*! other exports [not provided] [no usage info] */
  7869. /*! runtime requirements: __webpack_exports__ */
  7870. /***/ ((__unused_webpack_module, exports) => {
  7871. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7872. /***/ }),
  7873. /***/ "./src/interfaces/options/IOptionsNormalizer.ts":
  7874. /*!******************************************************!*\
  7875. !*** ./src/interfaces/options/IOptionsNormalizer.ts ***!
  7876. \******************************************************/
  7877. /*! flagged exports */
  7878. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7879. /*! other exports [not provided] [no usage info] */
  7880. /*! runtime requirements: __webpack_exports__ */
  7881. /***/ ((__unused_webpack_module, exports) => {
  7882. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7883. /***/ }),
  7884. /***/ "./src/interfaces/source-code/ISourceCode.ts":
  7885. /*!***************************************************!*\
  7886. !*** ./src/interfaces/source-code/ISourceCode.ts ***!
  7887. \***************************************************/
  7888. /*! flagged exports */
  7889. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7890. /*! other exports [not provided] [no usage info] */
  7891. /*! runtime requirements: __webpack_exports__ */
  7892. /***/ ((__unused_webpack_module, exports) => {
  7893. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7894. /***/ }),
  7895. /***/ "./src/interfaces/storages/string-array-transformers/ILiteralNodesCacheStorage.ts":
  7896. /*!****************************************************************************************!*\
  7897. !*** ./src/interfaces/storages/string-array-transformers/ILiteralNodesCacheStorage.ts ***!
  7898. \****************************************************************************************/
  7899. /*! flagged exports */
  7900. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7901. /*! other exports [not provided] [no usage info] */
  7902. /*! runtime requirements: __webpack_exports__ */
  7903. /***/ ((__unused_webpack_module, exports) => {
  7904. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7905. /***/ }),
  7906. /***/ "./src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperLexicalScopeDataStorage.ts":
  7907. /*!*******************************************************************************************************************!*\
  7908. !*** ./src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperLexicalScopeDataStorage.ts ***!
  7909. \*******************************************************************************************************************/
  7910. /*! flagged exports */
  7911. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7912. /*! other exports [not provided] [no usage info] */
  7913. /*! runtime requirements: __webpack_exports__ */
  7914. /***/ ((__unused_webpack_module, exports) => {
  7915. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7916. /***/ }),
  7917. /***/ "./src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperNamesDataStorage.ts":
  7918. /*!************************************************************************************************************!*\
  7919. !*** ./src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperNamesDataStorage.ts ***!
  7920. \************************************************************************************************************/
  7921. /*! flagged exports */
  7922. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7923. /*! other exports [not provided] [no usage info] */
  7924. /*! runtime requirements: __webpack_exports__ */
  7925. /***/ ((__unused_webpack_module, exports) => {
  7926. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7927. /***/ }),
  7928. /***/ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts":
  7929. /*!**********************************************************************************!*\
  7930. !*** ./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts ***!
  7931. \**********************************************************************************/
  7932. /*! flagged exports */
  7933. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7934. /*! other exports [not provided] [no usage info] */
  7935. /*! runtime requirements: __webpack_exports__ */
  7936. /***/ ((__unused_webpack_module, exports) => {
  7937. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7938. /***/ }),
  7939. /***/ "./src/interfaces/storages/string-array-transformers/IVisitedLexicalScopeNodesStackStorage.ts":
  7940. /*!****************************************************************************************************!*\
  7941. !*** ./src/interfaces/storages/string-array-transformers/IVisitedLexicalScopeNodesStackStorage.ts ***!
  7942. \****************************************************************************************************/
  7943. /*! flagged exports */
  7944. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7945. /*! other exports [not provided] [no usage info] */
  7946. /*! runtime requirements: __webpack_exports__ */
  7947. /***/ ((__unused_webpack_module, exports) => {
  7948. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7949. /***/ }),
  7950. /***/ "./src/interfaces/utils/IArrayUtils.ts":
  7951. /*!*********************************************!*\
  7952. !*** ./src/interfaces/utils/IArrayUtils.ts ***!
  7953. \*********************************************/
  7954. /*! flagged exports */
  7955. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7956. /*! other exports [not provided] [no usage info] */
  7957. /*! runtime requirements: __webpack_exports__ */
  7958. /***/ ((__unused_webpack_module, exports) => {
  7959. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7960. /***/ }),
  7961. /***/ "./src/interfaces/utils/ICryptUtils.ts":
  7962. /*!*********************************************!*\
  7963. !*** ./src/interfaces/utils/ICryptUtils.ts ***!
  7964. \*********************************************/
  7965. /*! flagged exports */
  7966. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7967. /*! other exports [not provided] [no usage info] */
  7968. /*! runtime requirements: __webpack_exports__ */
  7969. /***/ ((__unused_webpack_module, exports) => {
  7970. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7971. /***/ }),
  7972. /***/ "./src/interfaces/utils/ICryptUtilsSwappedAlphabet.ts":
  7973. /*!************************************************************!*\
  7974. !*** ./src/interfaces/utils/ICryptUtilsSwappedAlphabet.ts ***!
  7975. \************************************************************/
  7976. /*! flagged exports */
  7977. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7978. /*! other exports [not provided] [no usage info] */
  7979. /*! runtime requirements: __webpack_exports__ */
  7980. /***/ ((__unused_webpack_module, exports) => {
  7981. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7982. /***/ }),
  7983. /***/ "./src/interfaces/utils/IEscapeSequenceEncoder.ts":
  7984. /*!********************************************************!*\
  7985. !*** ./src/interfaces/utils/IEscapeSequenceEncoder.ts ***!
  7986. \********************************************************/
  7987. /*! flagged exports */
  7988. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  7989. /*! other exports [not provided] [no usage info] */
  7990. /*! runtime requirements: __webpack_exports__ */
  7991. /***/ ((__unused_webpack_module, exports) => {
  7992. Object.defineProperty(exports, "__esModule", ({ value: true }));
  7993. /***/ }),
  7994. /***/ "./src/interfaces/utils/ILevelledTopologicalSorter.ts":
  7995. /*!************************************************************!*\
  7996. !*** ./src/interfaces/utils/ILevelledTopologicalSorter.ts ***!
  7997. \************************************************************/
  7998. /*! flagged exports */
  7999. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  8000. /*! other exports [not provided] [no usage info] */
  8001. /*! runtime requirements: __webpack_exports__ */
  8002. /***/ ((__unused_webpack_module, exports) => {
  8003. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8004. /***/ }),
  8005. /***/ "./src/interfaces/utils/IRandomGenerator.ts":
  8006. /*!**************************************************!*\
  8007. !*** ./src/interfaces/utils/IRandomGenerator.ts ***!
  8008. \**************************************************/
  8009. /*! flagged exports */
  8010. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  8011. /*! other exports [not provided] [no usage info] */
  8012. /*! runtime requirements: __webpack_exports__ */
  8013. /***/ ((__unused_webpack_module, exports) => {
  8014. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8015. /***/ }),
  8016. /***/ "./src/interfaces/utils/ITransformerNamesGroupsBuilder.ts":
  8017. /*!****************************************************************!*\
  8018. !*** ./src/interfaces/utils/ITransformerNamesGroupsBuilder.ts ***!
  8019. \****************************************************************/
  8020. /*! flagged exports */
  8021. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  8022. /*! other exports [not provided] [no usage info] */
  8023. /*! runtime requirements: __webpack_exports__ */
  8024. /***/ ((__unused_webpack_module, exports) => {
  8025. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8026. /***/ }),
  8027. /***/ "./src/logger/Logger.ts":
  8028. /*!******************************!*\
  8029. !*** ./src/logger/Logger.ts ***!
  8030. \******************************/
  8031. /*! unknown exports (runtime-defined) */
  8032. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8033. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8034. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8035. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8036. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8037. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8038. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8039. };
  8040. var __metadata = (this && this.__metadata) || function (k, v) {
  8041. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8042. };
  8043. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8044. return function (target, key) { decorator(target, key, paramIndex); }
  8045. };
  8046. var __importDefault = (this && this.__importDefault) || function (mod) {
  8047. return (mod && mod.__esModule) ? mod : { "default": mod };
  8048. };
  8049. var Logger_1, _a;
  8050. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8051. exports.Logger = void 0;
  8052. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8053. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8054. const chalk_1 = __importDefault(__webpack_require__(/*! chalk */ "chalk"));
  8055. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8056. const LoggingPrefix_1 = __webpack_require__(/*! ../enums/logger/LoggingPrefix */ "./src/enums/logger/LoggingPrefix.ts");
  8057. let Logger = Logger_1 = class Logger {
  8058. constructor(options) {
  8059. this.options = options;
  8060. }
  8061. static log(loggingLevelColor, loggingPrefix, loggingMessage, value) {
  8062. const processedMessage = loggingLevelColor(`\n${loggingPrefix} ${loggingMessage}`);
  8063. console.log(processedMessage, value !== null && value !== void 0 ? value : '');
  8064. }
  8065. info(loggingMessage, value) {
  8066. if (!this.options.log) {
  8067. return;
  8068. }
  8069. Logger_1.log(Logger_1.colorInfo, LoggingPrefix_1.LoggingPrefix.Base, loggingMessage, value);
  8070. }
  8071. success(loggingMessage, value) {
  8072. if (!this.options.log) {
  8073. return;
  8074. }
  8075. Logger_1.log(Logger_1.colorSuccess, LoggingPrefix_1.LoggingPrefix.Base, loggingMessage, value);
  8076. }
  8077. warn(loggingMessage, value) {
  8078. if (!this.options.log) {
  8079. return;
  8080. }
  8081. Logger_1.log(Logger_1.colorWarn, LoggingPrefix_1.LoggingPrefix.Base, loggingMessage, value);
  8082. }
  8083. };
  8084. Logger.colorInfo = chalk_1.default.cyan;
  8085. Logger.colorSuccess = chalk_1.default.green;
  8086. Logger.colorWarn = chalk_1.default.yellow;
  8087. Logger = Logger_1 = __decorate([
  8088. inversify_1.injectable(),
  8089. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8090. __metadata("design:paramtypes", [typeof (_a = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _a : Object])
  8091. ], Logger);
  8092. exports.Logger = Logger;
  8093. /***/ }),
  8094. /***/ "./src/node-transformers/AbstractNodeTransformer.ts":
  8095. /*!**********************************************************!*\
  8096. !*** ./src/node-transformers/AbstractNodeTransformer.ts ***!
  8097. \**********************************************************/
  8098. /*! unknown exports (runtime-defined) */
  8099. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8100. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8101. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8102. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8103. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8104. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8105. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8106. };
  8107. var __metadata = (this && this.__metadata) || function (k, v) {
  8108. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8109. };
  8110. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8111. return function (target, key) { decorator(target, key, paramIndex); }
  8112. };
  8113. var _a, _b;
  8114. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8115. exports.AbstractNodeTransformer = void 0;
  8116. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8117. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8118. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8119. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8120. let AbstractNodeTransformer = class AbstractNodeTransformer {
  8121. constructor(randomGenerator, options) {
  8122. this.randomGenerator = randomGenerator;
  8123. this.options = options;
  8124. }
  8125. };
  8126. AbstractNodeTransformer = __decorate([
  8127. inversify_1.injectable(),
  8128. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8129. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8130. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  8131. ], AbstractNodeTransformer);
  8132. exports.AbstractNodeTransformer = AbstractNodeTransformer;
  8133. /***/ }),
  8134. /***/ "./src/node-transformers/NodeTransformerNamesGroupsBuilder.ts":
  8135. /*!********************************************************************!*\
  8136. !*** ./src/node-transformers/NodeTransformerNamesGroupsBuilder.ts ***!
  8137. \********************************************************************/
  8138. /*! unknown exports (runtime-defined) */
  8139. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8140. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8141. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8142. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8143. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8144. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8145. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8146. };
  8147. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8148. exports.NodeTransformerNamesGroupsBuilder = void 0;
  8149. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8150. const AbstractTransformerNamesGroupsBuilder_1 = __webpack_require__(/*! ../utils/AbstractTransformerNamesGroupsBuilder */ "./src/utils/AbstractTransformerNamesGroupsBuilder.ts");
  8151. let NodeTransformerNamesGroupsBuilder = class NodeTransformerNamesGroupsBuilder extends AbstractTransformerNamesGroupsBuilder_1.AbstractTransformerNamesGroupsBuilder {
  8152. };
  8153. NodeTransformerNamesGroupsBuilder = __decorate([
  8154. inversify_1.injectable()
  8155. ], NodeTransformerNamesGroupsBuilder);
  8156. exports.NodeTransformerNamesGroupsBuilder = NodeTransformerNamesGroupsBuilder;
  8157. /***/ }),
  8158. /***/ "./src/node-transformers/NodeTransformersRunner.ts":
  8159. /*!*********************************************************!*\
  8160. !*** ./src/node-transformers/NodeTransformersRunner.ts ***!
  8161. \*********************************************************/
  8162. /*! unknown exports (runtime-defined) */
  8163. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8164. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8165. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  8166. if (k2 === undefined) k2 = k;
  8167. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  8168. }) : (function(o, m, k, k2) {
  8169. if (k2 === undefined) k2 = k;
  8170. o[k2] = m[k];
  8171. }));
  8172. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  8173. Object.defineProperty(o, "default", { enumerable: true, value: v });
  8174. }) : function(o, v) {
  8175. o["default"] = v;
  8176. });
  8177. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8178. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8179. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8180. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8181. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8182. };
  8183. var __importStar = (this && this.__importStar) || function (mod) {
  8184. if (mod && mod.__esModule) return mod;
  8185. var result = {};
  8186. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  8187. __setModuleDefault(result, mod);
  8188. return result;
  8189. };
  8190. var __metadata = (this && this.__metadata) || function (k, v) {
  8191. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8192. };
  8193. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8194. return function (target, key) { decorator(target, key, paramIndex); }
  8195. };
  8196. var _a, _b;
  8197. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8198. exports.NodeTransformersRunner = void 0;
  8199. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8200. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8201. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  8202. const TNodeTransformerFactory_1 = __webpack_require__(/*! ../types/container/node-transformers/TNodeTransformerFactory */ "./src/types/container/node-transformers/TNodeTransformerFactory.ts");
  8203. const ITransformerNamesGroupsBuilder_1 = __webpack_require__(/*! ../interfaces/utils/ITransformerNamesGroupsBuilder */ "./src/interfaces/utils/ITransformerNamesGroupsBuilder.ts");
  8204. const VisitorDirection_1 = __webpack_require__(/*! ../enums/node-transformers/VisitorDirection */ "./src/enums/node-transformers/VisitorDirection.ts");
  8205. const NodeGuards_1 = __webpack_require__(/*! ../node/NodeGuards */ "./src/node/NodeGuards.ts");
  8206. const NodeMetadata_1 = __webpack_require__(/*! ../node/NodeMetadata */ "./src/node/NodeMetadata.ts");
  8207. let NodeTransformersRunner = class NodeTransformersRunner {
  8208. constructor(nodeTransformerFactory, nodeTransformerNamesGroupsBuilder) {
  8209. this.nodeTransformerFactory = nodeTransformerFactory;
  8210. this.nodeTransformerNamesGroupsBuilder = nodeTransformerNamesGroupsBuilder;
  8211. }
  8212. transform(astTree, nodeTransformerNames, nodeTransformationStage) {
  8213. if (!nodeTransformerNames.length) {
  8214. return astTree;
  8215. }
  8216. const normalizedNodeTransformers = this.buildNormalizedNodeTransformers(nodeTransformerNames, nodeTransformationStage);
  8217. const nodeTransformerNamesGroups = this.nodeTransformerNamesGroupsBuilder.build(normalizedNodeTransformers);
  8218. for (const nodeTransformerNamesGroup of nodeTransformerNamesGroups) {
  8219. const enterVisitors = [];
  8220. const leaveVisitors = [];
  8221. for (const nodeTransformerName of nodeTransformerNamesGroup) {
  8222. const nodeTransformer = normalizedNodeTransformers[nodeTransformerName];
  8223. const visitor = nodeTransformer.getVisitor(nodeTransformationStage);
  8224. if (!visitor) {
  8225. continue;
  8226. }
  8227. if (visitor.enter) {
  8228. enterVisitors.push({ enter: visitor.enter });
  8229. }
  8230. if (visitor.leave) {
  8231. leaveVisitors.push({ leave: visitor.leave });
  8232. }
  8233. }
  8234. if (!enterVisitors.length && !leaveVisitors.length) {
  8235. continue;
  8236. }
  8237. estraverse.replace(astTree, {
  8238. enter: this.mergeVisitorsForDirection(enterVisitors, VisitorDirection_1.VisitorDirection.Enter),
  8239. leave: this.mergeVisitorsForDirection(leaveVisitors, VisitorDirection_1.VisitorDirection.Leave)
  8240. });
  8241. }
  8242. return astTree;
  8243. }
  8244. buildNormalizedNodeTransformers(nodeTransformerNames, nodeTransformationStage) {
  8245. return nodeTransformerNames
  8246. .reduce((acc, nodeTransformerName) => {
  8247. const nodeTransformer = this.nodeTransformerFactory(nodeTransformerName);
  8248. if (!nodeTransformer.getVisitor(nodeTransformationStage)) {
  8249. return acc;
  8250. }
  8251. return Object.assign(Object.assign({}, acc), { [nodeTransformerName]: nodeTransformer });
  8252. }, {});
  8253. }
  8254. mergeVisitorsForDirection(visitors, direction) {
  8255. const visitorsLength = visitors.length;
  8256. if (!visitorsLength) {
  8257. return (node, parentNode) => node;
  8258. }
  8259. return (node, parentNode) => {
  8260. if (NodeMetadata_1.NodeMetadata.isIgnoredNode(node)) {
  8261. return estraverse.VisitorOption.Skip;
  8262. }
  8263. for (let i = 0; i < visitorsLength; i++) {
  8264. const visitorFunction = visitors[i][direction];
  8265. if (!visitorFunction) {
  8266. continue;
  8267. }
  8268. const visitorResult = visitorFunction(node, parentNode);
  8269. if (!visitorResult || !NodeGuards_1.NodeGuards.isNode(visitorResult)) {
  8270. continue;
  8271. }
  8272. node = visitorResult;
  8273. }
  8274. return node;
  8275. };
  8276. }
  8277. };
  8278. NodeTransformersRunner = __decorate([
  8279. inversify_1.injectable(),
  8280. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__INodeTransformer)),
  8281. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),
  8282. __metadata("design:paramtypes", [typeof (_a = typeof TNodeTransformerFactory_1.TNodeTransformerFactory !== "undefined" && TNodeTransformerFactory_1.TNodeTransformerFactory) === "function" ? _a : Object, typeof (_b = typeof ITransformerNamesGroupsBuilder_1.ITransformerNamesGroupsBuilder !== "undefined" && ITransformerNamesGroupsBuilder_1.ITransformerNamesGroupsBuilder) === "function" ? _b : Object])
  8283. ], NodeTransformersRunner);
  8284. exports.NodeTransformersRunner = NodeTransformersRunner;
  8285. /***/ }),
  8286. /***/ "./src/node-transformers/control-flow-transformers/BlockStatementControlFlowTransformer.ts":
  8287. /*!*************************************************************************************************!*\
  8288. !*** ./src/node-transformers/control-flow-transformers/BlockStatementControlFlowTransformer.ts ***!
  8289. \*************************************************************************************************/
  8290. /*! unknown exports (runtime-defined) */
  8291. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8292. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8293. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  8294. if (k2 === undefined) k2 = k;
  8295. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  8296. }) : (function(o, m, k, k2) {
  8297. if (k2 === undefined) k2 = k;
  8298. o[k2] = m[k];
  8299. }));
  8300. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  8301. Object.defineProperty(o, "default", { enumerable: true, value: v });
  8302. }) : function(o, v) {
  8303. o["default"] = v;
  8304. });
  8305. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8306. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8307. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8308. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8309. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8310. };
  8311. var __importStar = (this && this.__importStar) || function (mod) {
  8312. if (mod && mod.__esModule) return mod;
  8313. var result = {};
  8314. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  8315. __setModuleDefault(result, mod);
  8316. return result;
  8317. };
  8318. var __metadata = (this && this.__metadata) || function (k, v) {
  8319. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8320. };
  8321. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8322. return function (target, key) { decorator(target, key, paramIndex); }
  8323. };
  8324. var BlockStatementControlFlowTransformer_1, _a, _b, _c, _d;
  8325. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8326. exports.BlockStatementControlFlowTransformer = void 0;
  8327. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8328. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8329. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  8330. const TControlFlowCustomNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/TControlFlowCustomNodeFactory */ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts");
  8331. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  8332. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8333. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8334. const ControlFlowCustomNode_1 = __webpack_require__(/*! ../../enums/custom-nodes/ControlFlowCustomNode */ "./src/enums/custom-nodes/ControlFlowCustomNode.ts");
  8335. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  8336. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  8337. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  8338. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  8339. let BlockStatementControlFlowTransformer = BlockStatementControlFlowTransformer_1 = class BlockStatementControlFlowTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  8340. constructor(controlFlowCustomNodeFactory, arrayUtils, randomGenerator, options) {
  8341. super(randomGenerator, options);
  8342. this.controlFlowCustomNodeFactory = controlFlowCustomNodeFactory;
  8343. this.arrayUtils = arrayUtils;
  8344. }
  8345. static isProhibitedStatementNode(node) {
  8346. const isBreakOrContinueStatement = NodeGuards_1.NodeGuards.isBreakStatementNode(node)
  8347. || NodeGuards_1.NodeGuards.isContinueStatementNode(node);
  8348. const isVariableDeclarationWithLetOrConstKind = NodeGuards_1.NodeGuards.isVariableDeclarationNode(node)
  8349. && (node.kind === 'const' || node.kind === 'let');
  8350. const isClassDeclaration = NodeGuards_1.NodeGuards.isClassDeclarationNode(node);
  8351. return NodeGuards_1.NodeGuards.isFunctionDeclarationNode(node)
  8352. || isBreakOrContinueStatement
  8353. || isVariableDeclarationWithLetOrConstKind
  8354. || isClassDeclaration;
  8355. }
  8356. static canTransformBlockStatementNode(blockStatementNode) {
  8357. let canTransform = true;
  8358. estraverse.traverse(blockStatementNode, {
  8359. enter: (node) => {
  8360. if (NodeGuards_1.NodeGuards.isWhileStatementNode(node)) {
  8361. return estraverse.VisitorOption.Skip;
  8362. }
  8363. if (BlockStatementControlFlowTransformer_1.isProhibitedStatementNode(node)) {
  8364. canTransform = false;
  8365. }
  8366. }
  8367. });
  8368. if (blockStatementNode.body.length <= 4) {
  8369. canTransform = false;
  8370. }
  8371. return canTransform;
  8372. }
  8373. getVisitor(nodeTransformationStage) {
  8374. switch (nodeTransformationStage) {
  8375. case NodeTransformationStage_1.NodeTransformationStage.ControlFlowFlattening:
  8376. return {
  8377. leave: (node, parentNode) => {
  8378. if (parentNode && NodeGuards_1.NodeGuards.isBlockStatementNode(node)) {
  8379. return this.transformNode(node, parentNode);
  8380. }
  8381. }
  8382. };
  8383. default:
  8384. return null;
  8385. }
  8386. }
  8387. transformNode(blockStatementNode, parentNode) {
  8388. if (this.randomGenerator.getMathRandom() > this.options.controlFlowFlatteningThreshold ||
  8389. !BlockStatementControlFlowTransformer_1.canTransformBlockStatementNode(blockStatementNode)) {
  8390. return blockStatementNode;
  8391. }
  8392. const blockStatementBody = blockStatementNode.body;
  8393. const originalKeys = this.arrayUtils.createWithRange(blockStatementBody.length);
  8394. const shuffledKeys = this.arrayUtils.shuffle(originalKeys);
  8395. const originalKeysIndexesInShuffledArray = originalKeys.map((key) => shuffledKeys.indexOf(key));
  8396. const blockStatementControlFlowFlatteningCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);
  8397. blockStatementControlFlowFlatteningCustomNode.initialize(blockStatementBody, shuffledKeys, originalKeysIndexesInShuffledArray);
  8398. const newBlockStatementNode = blockStatementControlFlowFlatteningCustomNode.getNode()[0];
  8399. NodeUtils_1.NodeUtils.parentizeNode(newBlockStatementNode, parentNode);
  8400. return newBlockStatementNode;
  8401. }
  8402. };
  8403. BlockStatementControlFlowTransformer = BlockStatementControlFlowTransformer_1 = __decorate([
  8404. inversify_1.injectable(),
  8405. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)),
  8406. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  8407. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8408. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8409. __metadata("design:paramtypes", [typeof (_a = typeof TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory !== "undefined" && TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory) === "function" ? _a : Object, typeof (_b = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  8410. ], BlockStatementControlFlowTransformer);
  8411. exports.BlockStatementControlFlowTransformer = BlockStatementControlFlowTransformer;
  8412. /***/ }),
  8413. /***/ "./src/node-transformers/control-flow-transformers/FunctionControlFlowTransformer.ts":
  8414. /*!*******************************************************************************************!*\
  8415. !*** ./src/node-transformers/control-flow-transformers/FunctionControlFlowTransformer.ts ***!
  8416. \*******************************************************************************************/
  8417. /*! unknown exports (runtime-defined) */
  8418. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8419. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8420. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  8421. if (k2 === undefined) k2 = k;
  8422. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  8423. }) : (function(o, m, k, k2) {
  8424. if (k2 === undefined) k2 = k;
  8425. o[k2] = m[k];
  8426. }));
  8427. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  8428. Object.defineProperty(o, "default", { enumerable: true, value: v });
  8429. }) : function(o, v) {
  8430. o["default"] = v;
  8431. });
  8432. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8433. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8434. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8435. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8436. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8437. };
  8438. var __importStar = (this && this.__importStar) || function (mod) {
  8439. if (mod && mod.__esModule) return mod;
  8440. var result = {};
  8441. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  8442. __setModuleDefault(result, mod);
  8443. return result;
  8444. };
  8445. var __metadata = (this && this.__metadata) || function (k, v) {
  8446. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8447. };
  8448. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8449. return function (target, key) { decorator(target, key, paramIndex); }
  8450. };
  8451. var FunctionControlFlowTransformer_1, _a, _b, _c, _d, _e;
  8452. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8453. exports.FunctionControlFlowTransformer = void 0;
  8454. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8455. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8456. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  8457. const TControlFlowCustomNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/TControlFlowCustomNodeFactory */ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts");
  8458. const TControlFlowReplacerFactory_1 = __webpack_require__(/*! ../../types/container/node-transformers/TControlFlowReplacerFactory */ "./src/types/container/node-transformers/TControlFlowReplacerFactory.ts");
  8459. const TControlFlowStorageFactory_1 = __webpack_require__(/*! ../../types/container/node-transformers/TControlFlowStorageFactory */ "./src/types/container/node-transformers/TControlFlowStorageFactory.ts");
  8460. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8461. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8462. const ControlFlowCustomNode_1 = __webpack_require__(/*! ../../enums/custom-nodes/ControlFlowCustomNode */ "./src/enums/custom-nodes/ControlFlowCustomNode.ts");
  8463. const ControlFlowReplacer_1 = __webpack_require__(/*! ../../enums/node-transformers/control-flow-transformers/control-flow-replacers/ControlFlowReplacer */ "./src/enums/node-transformers/control-flow-transformers/control-flow-replacers/ControlFlowReplacer.ts");
  8464. const NodeType_1 = __webpack_require__(/*! ../../enums/node/NodeType */ "./src/enums/node/NodeType.ts");
  8465. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  8466. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  8467. const NodeAppender_1 = __webpack_require__(/*! ../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  8468. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  8469. const NodeMetadata_1 = __webpack_require__(/*! ../../node/NodeMetadata */ "./src/node/NodeMetadata.ts");
  8470. const NodeStatementUtils_1 = __webpack_require__(/*! ../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  8471. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  8472. let FunctionControlFlowTransformer = FunctionControlFlowTransformer_1 = class FunctionControlFlowTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  8473. constructor(controlFlowStorageFactory, controlFlowReplacerFactory, controlFlowCustomNodeFactory, randomGenerator, options) {
  8474. super(randomGenerator, options);
  8475. this.controlFlowData = new Map();
  8476. this.visitedFunctionNodes = new Set();
  8477. this.hostNodesWithControlFlowNode = new Set();
  8478. this.controlFlowStorageFactory = controlFlowStorageFactory;
  8479. this.controlFlowReplacerFactory = controlFlowReplacerFactory;
  8480. this.controlFlowCustomNodeFactory = controlFlowCustomNodeFactory;
  8481. }
  8482. getVisitor(nodeTransformationStage) {
  8483. switch (nodeTransformationStage) {
  8484. case NodeTransformationStage_1.NodeTransformationStage.ControlFlowFlattening:
  8485. return {
  8486. leave: (node, parentNode) => {
  8487. if (parentNode && (NodeGuards_1.NodeGuards.isFunctionDeclarationNode(node) ||
  8488. NodeGuards_1.NodeGuards.isFunctionExpressionNode(node) ||
  8489. NodeGuards_1.NodeGuards.isArrowFunctionExpressionNode(node))) {
  8490. return this.transformNode(node, parentNode);
  8491. }
  8492. }
  8493. };
  8494. default:
  8495. return null;
  8496. }
  8497. }
  8498. transformNode(functionNode, parentNode) {
  8499. this.visitedFunctionNodes.add(functionNode);
  8500. if (!NodeGuards_1.NodeGuards.isBlockStatementNode(functionNode.body)) {
  8501. return functionNode;
  8502. }
  8503. const hostNode = this.getHostNode(functionNode.body);
  8504. const controlFlowStorage = this.getControlFlowStorage(hostNode);
  8505. this.controlFlowData.set(hostNode, controlFlowStorage);
  8506. this.transformFunctionBody(functionNode.body, controlFlowStorage);
  8507. if (!controlFlowStorage.getLength()) {
  8508. return functionNode;
  8509. }
  8510. const controlFlowStorageCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.ControlFlowStorageNode);
  8511. controlFlowStorageCustomNode.initialize(controlFlowStorage);
  8512. NodeAppender_1.NodeAppender.prepend(hostNode, controlFlowStorageCustomNode.getNode());
  8513. this.hostNodesWithControlFlowNode.add(hostNode);
  8514. NodeUtils_1.NodeUtils.parentizeAst(functionNode);
  8515. return functionNode;
  8516. }
  8517. getControlFlowStorage(hostNode) {
  8518. const controlFlowStorage = this.controlFlowStorageFactory();
  8519. if (this.controlFlowData.has(hostNode)) {
  8520. if (this.hostNodesWithControlFlowNode.has(hostNode)) {
  8521. if (NodeGuards_1.NodeGuards.isSwitchCaseNode(hostNode)) {
  8522. hostNode.consequent.shift();
  8523. }
  8524. else {
  8525. hostNode.body.shift();
  8526. }
  8527. }
  8528. const hostControlFlowStorage = this.controlFlowData.get(hostNode);
  8529. controlFlowStorage.mergeWith(hostControlFlowStorage, true);
  8530. }
  8531. return controlFlowStorage;
  8532. }
  8533. getHostNode(functionNodeBody) {
  8534. const blockScopesOfNode = NodeStatementUtils_1.NodeStatementUtils.getParentNodesWithStatements(functionNodeBody);
  8535. if (blockScopesOfNode.length === 1) {
  8536. return functionNodeBody;
  8537. }
  8538. else {
  8539. blockScopesOfNode.pop();
  8540. }
  8541. if (blockScopesOfNode.length > FunctionControlFlowTransformer_1.hostNodeSearchMinDepth) {
  8542. blockScopesOfNode.splice(0, FunctionControlFlowTransformer_1.hostNodeSearchMinDepth);
  8543. }
  8544. if (blockScopesOfNode.length > FunctionControlFlowTransformer_1.hostNodeSearchMaxDepth) {
  8545. blockScopesOfNode.length = FunctionControlFlowTransformer_1.hostNodeSearchMaxDepth;
  8546. }
  8547. return this.randomGenerator.getRandomGenerator().pickone(blockScopesOfNode);
  8548. }
  8549. isVisitedFunctionNode(node) {
  8550. return (NodeGuards_1.NodeGuards.isFunctionDeclarationNode(node) ||
  8551. NodeGuards_1.NodeGuards.isFunctionExpressionNode(node) ||
  8552. NodeGuards_1.NodeGuards.isArrowFunctionExpressionNode(node)) && this.visitedFunctionNodes.has(node);
  8553. }
  8554. transformFunctionBody(functionNodeBody, controlFlowStorage) {
  8555. estraverse.replace(functionNodeBody, {
  8556. enter: (node, parentNode) => {
  8557. if (NodeMetadata_1.NodeMetadata.isIgnoredNode(node)) {
  8558. return estraverse.VisitorOption.Skip;
  8559. }
  8560. if (this.isVisitedFunctionNode(node) || !parentNode) {
  8561. return estraverse.VisitorOption.Skip;
  8562. }
  8563. if (!FunctionControlFlowTransformer_1.controlFlowReplacersMap.has(node.type)) {
  8564. return node;
  8565. }
  8566. if (this.randomGenerator.getMathRandom() > this.options.controlFlowFlatteningThreshold) {
  8567. return node;
  8568. }
  8569. const controlFlowReplacerName = FunctionControlFlowTransformer_1
  8570. .controlFlowReplacersMap.get(node.type);
  8571. if (controlFlowReplacerName === undefined) {
  8572. return node;
  8573. }
  8574. return Object.assign(Object.assign({}, this.controlFlowReplacerFactory(controlFlowReplacerName).replace(node, parentNode, controlFlowStorage)), { parentNode });
  8575. }
  8576. });
  8577. }
  8578. };
  8579. FunctionControlFlowTransformer.controlFlowReplacersMap = new Map([
  8580. [NodeType_1.NodeType.BinaryExpression, ControlFlowReplacer_1.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],
  8581. [NodeType_1.NodeType.CallExpression, ControlFlowReplacer_1.ControlFlowReplacer.CallExpressionControlFlowReplacer],
  8582. [NodeType_1.NodeType.LogicalExpression, ControlFlowReplacer_1.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],
  8583. [NodeType_1.NodeType.Literal, ControlFlowReplacer_1.ControlFlowReplacer.StringLiteralControlFlowReplacer]
  8584. ]);
  8585. FunctionControlFlowTransformer.hostNodeSearchMinDepth = 0;
  8586. FunctionControlFlowTransformer.hostNodeSearchMaxDepth = 2;
  8587. FunctionControlFlowTransformer = FunctionControlFlowTransformer_1 = __decorate([
  8588. inversify_1.injectable(),
  8589. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__TControlFlowStorage)),
  8590. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowReplacer)),
  8591. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)),
  8592. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8593. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8594. __metadata("design:paramtypes", [typeof (_a = typeof TControlFlowStorageFactory_1.TControlFlowStorageFactory !== "undefined" && TControlFlowStorageFactory_1.TControlFlowStorageFactory) === "function" ? _a : Object, typeof (_b = typeof TControlFlowReplacerFactory_1.TControlFlowReplacerFactory !== "undefined" && TControlFlowReplacerFactory_1.TControlFlowReplacerFactory) === "function" ? _b : Object, typeof (_c = typeof TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory !== "undefined" && TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory) === "function" ? _c : Object, typeof (_d = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _d : Object, typeof (_e = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _e : Object])
  8595. ], FunctionControlFlowTransformer);
  8596. exports.FunctionControlFlowTransformer = FunctionControlFlowTransformer;
  8597. /***/ }),
  8598. /***/ "./src/node-transformers/control-flow-transformers/control-flow-replacers/AbstractControlFlowReplacer.ts":
  8599. /*!***************************************************************************************************************!*\
  8600. !*** ./src/node-transformers/control-flow-transformers/control-flow-replacers/AbstractControlFlowReplacer.ts ***!
  8601. \***************************************************************************************************************/
  8602. /*! unknown exports (runtime-defined) */
  8603. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8604. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8605. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8606. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8607. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8608. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8609. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8610. };
  8611. var __metadata = (this && this.__metadata) || function (k, v) {
  8612. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8613. };
  8614. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8615. return function (target, key) { decorator(target, key, paramIndex); }
  8616. };
  8617. var AbstractControlFlowReplacer_1, _a, _b, _c;
  8618. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8619. exports.AbstractControlFlowReplacer = void 0;
  8620. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8621. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8622. const TControlFlowCustomNodeFactory_1 = __webpack_require__(/*! ../../../types/container/custom-nodes/TControlFlowCustomNodeFactory */ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts");
  8623. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8624. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8625. let AbstractControlFlowReplacer = AbstractControlFlowReplacer_1 = class AbstractControlFlowReplacer {
  8626. constructor(controlFlowCustomNodeFactory, randomGenerator, options) {
  8627. this.replacerDataByControlFlowStorageId = new Map();
  8628. this.controlFlowCustomNodeFactory = controlFlowCustomNodeFactory;
  8629. this.randomGenerator = randomGenerator;
  8630. this.options = options;
  8631. }
  8632. static getStorageKeysByIdForCurrentStorage(identifierDataByControlFlowStorageId, controlFlowStorageId) {
  8633. let storageKeysById;
  8634. if (identifierDataByControlFlowStorageId.has(controlFlowStorageId)) {
  8635. storageKeysById = identifierDataByControlFlowStorageId.get(controlFlowStorageId);
  8636. }
  8637. else {
  8638. storageKeysById = new Map();
  8639. }
  8640. return storageKeysById;
  8641. }
  8642. insertCustomNodeToControlFlowStorage(customNode, controlFlowStorage, replacerId, usingExistingIdentifierChance) {
  8643. const controlFlowStorageId = controlFlowStorage.getStorageId();
  8644. const storageKeysById = AbstractControlFlowReplacer_1
  8645. .getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId, controlFlowStorageId);
  8646. const storageKeysForCurrentId = storageKeysById.get(replacerId);
  8647. if (this.randomGenerator.getMathRandom() < usingExistingIdentifierChance &&
  8648. storageKeysForCurrentId &&
  8649. storageKeysForCurrentId.length) {
  8650. return this.randomGenerator.getRandomGenerator().pickone(storageKeysForCurrentId);
  8651. }
  8652. const generateStorageKey = (length) => {
  8653. const key = this.randomGenerator.getRandomString(length);
  8654. if (controlFlowStorage.getStorage().has(key)) {
  8655. return generateStorageKey(length);
  8656. }
  8657. return key;
  8658. };
  8659. const storageKey = generateStorageKey(5);
  8660. storageKeysById.set(replacerId, [storageKey]);
  8661. this.replacerDataByControlFlowStorageId.set(controlFlowStorageId, storageKeysById);
  8662. controlFlowStorage.set(storageKey, customNode);
  8663. return storageKey;
  8664. }
  8665. };
  8666. AbstractControlFlowReplacer = AbstractControlFlowReplacer_1 = __decorate([
  8667. inversify_1.injectable(),
  8668. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)),
  8669. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8670. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8671. __metadata("design:paramtypes", [typeof (_a = typeof TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory !== "undefined" && TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  8672. ], AbstractControlFlowReplacer);
  8673. exports.AbstractControlFlowReplacer = AbstractControlFlowReplacer;
  8674. /***/ }),
  8675. /***/ "./src/node-transformers/control-flow-transformers/control-flow-replacers/BinaryExpressionControlFlowReplacer.ts":
  8676. /*!***********************************************************************************************************************!*\
  8677. !*** ./src/node-transformers/control-flow-transformers/control-flow-replacers/BinaryExpressionControlFlowReplacer.ts ***!
  8678. \***********************************************************************************************************************/
  8679. /*! unknown exports (runtime-defined) */
  8680. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8681. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8682. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8683. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8684. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8685. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8686. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8687. };
  8688. var __metadata = (this && this.__metadata) || function (k, v) {
  8689. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8690. };
  8691. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8692. return function (target, key) { decorator(target, key, paramIndex); }
  8693. };
  8694. var BinaryExpressionControlFlowReplacer_1, _a, _b, _c;
  8695. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8696. exports.BinaryExpressionControlFlowReplacer = void 0;
  8697. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8698. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8699. const TControlFlowCustomNodeFactory_1 = __webpack_require__(/*! ../../../types/container/custom-nodes/TControlFlowCustomNodeFactory */ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts");
  8700. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8701. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8702. const ControlFlowCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/ControlFlowCustomNode */ "./src/enums/custom-nodes/ControlFlowCustomNode.ts");
  8703. const ExpressionWithOperatorControlFlowReplacer_1 = __webpack_require__(/*! ./ExpressionWithOperatorControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/ExpressionWithOperatorControlFlowReplacer.ts");
  8704. let BinaryExpressionControlFlowReplacer = BinaryExpressionControlFlowReplacer_1 = class BinaryExpressionControlFlowReplacer extends ExpressionWithOperatorControlFlowReplacer_1.ExpressionWithOperatorControlFlowReplacer {
  8705. constructor(controlFlowCustomNodeFactory, randomGenerator, options) {
  8706. super(controlFlowCustomNodeFactory, randomGenerator, options);
  8707. }
  8708. replace(binaryExpressionNode, parentNode, controlFlowStorage) {
  8709. const operator = binaryExpressionNode.operator;
  8710. const binaryExpressionFunctionCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.BinaryExpressionFunctionNode);
  8711. binaryExpressionFunctionCustomNode.initialize(operator);
  8712. const storageKey = this.insertCustomNodeToControlFlowStorage(binaryExpressionFunctionCustomNode, controlFlowStorage, operator, BinaryExpressionControlFlowReplacer_1.usingExistingIdentifierChance);
  8713. return this.getControlFlowStorageCallNode(controlFlowStorage.getStorageId(), storageKey, binaryExpressionNode.left, binaryExpressionNode.right);
  8714. }
  8715. };
  8716. BinaryExpressionControlFlowReplacer.usingExistingIdentifierChance = 0.5;
  8717. BinaryExpressionControlFlowReplacer = BinaryExpressionControlFlowReplacer_1 = __decorate([
  8718. inversify_1.injectable(),
  8719. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)),
  8720. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8721. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8722. __metadata("design:paramtypes", [typeof (_a = typeof TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory !== "undefined" && TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  8723. ], BinaryExpressionControlFlowReplacer);
  8724. exports.BinaryExpressionControlFlowReplacer = BinaryExpressionControlFlowReplacer;
  8725. /***/ }),
  8726. /***/ "./src/node-transformers/control-flow-transformers/control-flow-replacers/CallExpressionControlFlowReplacer.ts":
  8727. /*!*********************************************************************************************************************!*\
  8728. !*** ./src/node-transformers/control-flow-transformers/control-flow-replacers/CallExpressionControlFlowReplacer.ts ***!
  8729. \*********************************************************************************************************************/
  8730. /*! unknown exports (runtime-defined) */
  8731. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8732. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8733. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8734. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8735. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8736. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8737. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8738. };
  8739. var __metadata = (this && this.__metadata) || function (k, v) {
  8740. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8741. };
  8742. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8743. return function (target, key) { decorator(target, key, paramIndex); }
  8744. };
  8745. var CallExpressionControlFlowReplacer_1, _a, _b, _c;
  8746. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8747. exports.CallExpressionControlFlowReplacer = void 0;
  8748. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8749. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8750. const TControlFlowCustomNodeFactory_1 = __webpack_require__(/*! ../../../types/container/custom-nodes/TControlFlowCustomNodeFactory */ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts");
  8751. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8752. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8753. const ControlFlowCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/ControlFlowCustomNode */ "./src/enums/custom-nodes/ControlFlowCustomNode.ts");
  8754. const AbstractControlFlowReplacer_1 = __webpack_require__(/*! ./AbstractControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/AbstractControlFlowReplacer.ts");
  8755. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  8756. let CallExpressionControlFlowReplacer = CallExpressionControlFlowReplacer_1 = class CallExpressionControlFlowReplacer extends AbstractControlFlowReplacer_1.AbstractControlFlowReplacer {
  8757. constructor(controlFlowCustomNodeFactory, randomGenerator, options) {
  8758. super(controlFlowCustomNodeFactory, randomGenerator, options);
  8759. }
  8760. replace(callExpressionNode, parentNode, controlFlowStorage) {
  8761. const callee = callExpressionNode.callee;
  8762. if (!NodeGuards_1.NodeGuards.isIdentifierNode(callee)) {
  8763. return callExpressionNode;
  8764. }
  8765. const replacerId = String(callExpressionNode.arguments.length);
  8766. const callExpressionFunctionCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.CallExpressionFunctionNode);
  8767. const expressionArguments = callExpressionNode.arguments;
  8768. callExpressionFunctionCustomNode.initialize(expressionArguments);
  8769. const storageKey = this.insertCustomNodeToControlFlowStorage(callExpressionFunctionCustomNode, controlFlowStorage, replacerId, CallExpressionControlFlowReplacer_1.usingExistingIdentifierChance);
  8770. return this.getControlFlowStorageCallNode(controlFlowStorage.getStorageId(), storageKey, callee, expressionArguments);
  8771. }
  8772. getControlFlowStorageCallNode(controlFlowStorageId, storageKey, callee, expressionArguments) {
  8773. const controlFlowStorageCallCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);
  8774. controlFlowStorageCallCustomNode.initialize(controlFlowStorageId, storageKey, callee, expressionArguments);
  8775. const statementNode = controlFlowStorageCallCustomNode.getNode()[0];
  8776. if (!statementNode || !NodeGuards_1.NodeGuards.isExpressionStatementNode(statementNode)) {
  8777. throw new Error('`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node');
  8778. }
  8779. return statementNode.expression;
  8780. }
  8781. };
  8782. CallExpressionControlFlowReplacer.usingExistingIdentifierChance = 0.5;
  8783. CallExpressionControlFlowReplacer = CallExpressionControlFlowReplacer_1 = __decorate([
  8784. inversify_1.injectable(),
  8785. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)),
  8786. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8787. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8788. __metadata("design:paramtypes", [typeof (_a = typeof TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory !== "undefined" && TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  8789. ], CallExpressionControlFlowReplacer);
  8790. exports.CallExpressionControlFlowReplacer = CallExpressionControlFlowReplacer;
  8791. /***/ }),
  8792. /***/ "./src/node-transformers/control-flow-transformers/control-flow-replacers/ExpressionWithOperatorControlFlowReplacer.ts":
  8793. /*!*****************************************************************************************************************************!*\
  8794. !*** ./src/node-transformers/control-flow-transformers/control-flow-replacers/ExpressionWithOperatorControlFlowReplacer.ts ***!
  8795. \*****************************************************************************************************************************/
  8796. /*! unknown exports (runtime-defined) */
  8797. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8798. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8799. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8800. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8801. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8802. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8803. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8804. };
  8805. var __metadata = (this && this.__metadata) || function (k, v) {
  8806. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8807. };
  8808. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8809. return function (target, key) { decorator(target, key, paramIndex); }
  8810. };
  8811. var _a, _b, _c;
  8812. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8813. exports.ExpressionWithOperatorControlFlowReplacer = void 0;
  8814. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8815. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8816. const TControlFlowCustomNodeFactory_1 = __webpack_require__(/*! ../../../types/container/custom-nodes/TControlFlowCustomNodeFactory */ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts");
  8817. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8818. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8819. const ControlFlowCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/ControlFlowCustomNode */ "./src/enums/custom-nodes/ControlFlowCustomNode.ts");
  8820. const AbstractControlFlowReplacer_1 = __webpack_require__(/*! ./AbstractControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/AbstractControlFlowReplacer.ts");
  8821. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  8822. let ExpressionWithOperatorControlFlowReplacer = class ExpressionWithOperatorControlFlowReplacer extends AbstractControlFlowReplacer_1.AbstractControlFlowReplacer {
  8823. constructor(controlFlowCustomNodeFactory, randomGenerator, options) {
  8824. super(controlFlowCustomNodeFactory, randomGenerator, options);
  8825. }
  8826. getControlFlowStorageCallNode(controlFlowStorageId, storageKey, leftExpression, rightExpression) {
  8827. const controlFlowStorageCallCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);
  8828. controlFlowStorageCallCustomNode.initialize(controlFlowStorageId, storageKey, leftExpression, rightExpression);
  8829. const statementNode = controlFlowStorageCallCustomNode.getNode()[0];
  8830. if (!statementNode || !NodeGuards_1.NodeGuards.isExpressionStatementNode(statementNode)) {
  8831. throw new Error('`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node');
  8832. }
  8833. return statementNode.expression;
  8834. }
  8835. };
  8836. ExpressionWithOperatorControlFlowReplacer = __decorate([
  8837. inversify_1.injectable(),
  8838. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)),
  8839. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8840. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8841. __metadata("design:paramtypes", [typeof (_a = typeof TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory !== "undefined" && TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  8842. ], ExpressionWithOperatorControlFlowReplacer);
  8843. exports.ExpressionWithOperatorControlFlowReplacer = ExpressionWithOperatorControlFlowReplacer;
  8844. /***/ }),
  8845. /***/ "./src/node-transformers/control-flow-transformers/control-flow-replacers/LogicalExpressionControlFlowReplacer.ts":
  8846. /*!************************************************************************************************************************!*\
  8847. !*** ./src/node-transformers/control-flow-transformers/control-flow-replacers/LogicalExpressionControlFlowReplacer.ts ***!
  8848. \************************************************************************************************************************/
  8849. /*! unknown exports (runtime-defined) */
  8850. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8851. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8852. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8853. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8854. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8855. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8856. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8857. };
  8858. var __metadata = (this && this.__metadata) || function (k, v) {
  8859. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8860. };
  8861. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8862. return function (target, key) { decorator(target, key, paramIndex); }
  8863. };
  8864. var LogicalExpressionControlFlowReplacer_1, _a, _b, _c;
  8865. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8866. exports.LogicalExpressionControlFlowReplacer = void 0;
  8867. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8868. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8869. const TControlFlowCustomNodeFactory_1 = __webpack_require__(/*! ../../../types/container/custom-nodes/TControlFlowCustomNodeFactory */ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts");
  8870. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8871. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8872. const ControlFlowCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/ControlFlowCustomNode */ "./src/enums/custom-nodes/ControlFlowCustomNode.ts");
  8873. const ExpressionWithOperatorControlFlowReplacer_1 = __webpack_require__(/*! ./ExpressionWithOperatorControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/ExpressionWithOperatorControlFlowReplacer.ts");
  8874. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  8875. const NodeUtils_1 = __webpack_require__(/*! ../../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  8876. let LogicalExpressionControlFlowReplacer = LogicalExpressionControlFlowReplacer_1 = class LogicalExpressionControlFlowReplacer extends ExpressionWithOperatorControlFlowReplacer_1.ExpressionWithOperatorControlFlowReplacer {
  8877. constructor(controlFlowCustomNodeFactory, randomGenerator, options) {
  8878. super(controlFlowCustomNodeFactory, randomGenerator, options);
  8879. }
  8880. replace(logicalExpressionNode, parentNode, controlFlowStorage) {
  8881. if (this.checkForProhibitedExpressions(logicalExpressionNode.left, logicalExpressionNode.right)) {
  8882. return logicalExpressionNode;
  8883. }
  8884. const operator = logicalExpressionNode.operator;
  8885. const logicalExpressionFunctionCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.LogicalExpressionFunctionNode);
  8886. logicalExpressionFunctionCustomNode.initialize(operator);
  8887. const storageKey = this.insertCustomNodeToControlFlowStorage(logicalExpressionFunctionCustomNode, controlFlowStorage, operator, LogicalExpressionControlFlowReplacer_1.usingExistingIdentifierChance);
  8888. return this.getControlFlowStorageCallNode(controlFlowStorage.getStorageId(), storageKey, logicalExpressionNode.left, logicalExpressionNode.right);
  8889. }
  8890. checkForProhibitedExpressions(leftExpression, rightExpression) {
  8891. return [leftExpression, rightExpression].some((expressionNode) => {
  8892. let nodeForCheck;
  8893. if (!NodeGuards_1.NodeGuards.isUnaryExpressionNode(expressionNode)) {
  8894. nodeForCheck = expressionNode;
  8895. }
  8896. else {
  8897. nodeForCheck = NodeUtils_1.NodeUtils.getUnaryExpressionArgumentNode(expressionNode);
  8898. }
  8899. return !NodeGuards_1.NodeGuards.isLiteralNode(nodeForCheck) &&
  8900. !NodeGuards_1.NodeGuards.isIdentifierNode(nodeForCheck) &&
  8901. !NodeGuards_1.NodeGuards.isObjectExpressionNode(nodeForCheck) &&
  8902. !NodeGuards_1.NodeGuards.isExpressionStatementNode(nodeForCheck);
  8903. });
  8904. }
  8905. };
  8906. LogicalExpressionControlFlowReplacer.usingExistingIdentifierChance = 0.5;
  8907. LogicalExpressionControlFlowReplacer = LogicalExpressionControlFlowReplacer_1 = __decorate([
  8908. inversify_1.injectable(),
  8909. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)),
  8910. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8911. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8912. __metadata("design:paramtypes", [typeof (_a = typeof TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory !== "undefined" && TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  8913. ], LogicalExpressionControlFlowReplacer);
  8914. exports.LogicalExpressionControlFlowReplacer = LogicalExpressionControlFlowReplacer;
  8915. /***/ }),
  8916. /***/ "./src/node-transformers/control-flow-transformers/control-flow-replacers/StringLiteralControlFlowReplacer.ts":
  8917. /*!********************************************************************************************************************!*\
  8918. !*** ./src/node-transformers/control-flow-transformers/control-flow-replacers/StringLiteralControlFlowReplacer.ts ***!
  8919. \********************************************************************************************************************/
  8920. /*! unknown exports (runtime-defined) */
  8921. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8922. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8923. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8924. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8925. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8926. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8927. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8928. };
  8929. var __metadata = (this && this.__metadata) || function (k, v) {
  8930. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8931. };
  8932. var __param = (this && this.__param) || function (paramIndex, decorator) {
  8933. return function (target, key) { decorator(target, key, paramIndex); }
  8934. };
  8935. var StringLiteralControlFlowReplacer_1, _a, _b, _c;
  8936. Object.defineProperty(exports, "__esModule", ({ value: true }));
  8937. exports.StringLiteralControlFlowReplacer = void 0;
  8938. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  8939. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  8940. const TControlFlowCustomNodeFactory_1 = __webpack_require__(/*! ../../../types/container/custom-nodes/TControlFlowCustomNodeFactory */ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts");
  8941. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  8942. const IRandomGenerator_1 = __webpack_require__(/*! ../../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  8943. const ControlFlowCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/ControlFlowCustomNode */ "./src/enums/custom-nodes/ControlFlowCustomNode.ts");
  8944. const AbstractControlFlowReplacer_1 = __webpack_require__(/*! ./AbstractControlFlowReplacer */ "./src/node-transformers/control-flow-transformers/control-flow-replacers/AbstractControlFlowReplacer.ts");
  8945. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  8946. const NodeLiteralUtils_1 = __webpack_require__(/*! ../../../node/NodeLiteralUtils */ "./src/node/NodeLiteralUtils.ts");
  8947. let StringLiteralControlFlowReplacer = StringLiteralControlFlowReplacer_1 = class StringLiteralControlFlowReplacer extends AbstractControlFlowReplacer_1.AbstractControlFlowReplacer {
  8948. constructor(controlFlowCustomNodeFactory, randomGenerator, options) {
  8949. super(controlFlowCustomNodeFactory, randomGenerator, options);
  8950. }
  8951. replace(literalNode, parentNode, controlFlowStorage) {
  8952. if (NodeGuards_1.NodeGuards.isPropertyNode(parentNode) && parentNode.key === literalNode) {
  8953. return literalNode;
  8954. }
  8955. if (!NodeLiteralUtils_1.NodeLiteralUtils.isStringLiteralNode(literalNode) || literalNode.value.length < 3) {
  8956. return literalNode;
  8957. }
  8958. const replacerId = String(literalNode.value);
  8959. const literalFunctionCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.StringLiteralNode);
  8960. literalFunctionCustomNode.initialize(literalNode.value);
  8961. const storageKey = this.insertCustomNodeToControlFlowStorage(literalFunctionCustomNode, controlFlowStorage, replacerId, StringLiteralControlFlowReplacer_1.usingExistingIdentifierChance);
  8962. return this.getControlFlowStorageCallNode(controlFlowStorage.getStorageId(), storageKey);
  8963. }
  8964. getControlFlowStorageCallNode(controlFlowStorageId, storageKey) {
  8965. const controlFlowStorageCallCustomNode = this.controlFlowCustomNodeFactory(ControlFlowCustomNode_1.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);
  8966. controlFlowStorageCallCustomNode.initialize(controlFlowStorageId, storageKey);
  8967. const statementNode = controlFlowStorageCallCustomNode.getNode()[0];
  8968. if (!statementNode || !NodeGuards_1.NodeGuards.isExpressionStatementNode(statementNode)) {
  8969. throw new Error('`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node');
  8970. }
  8971. return statementNode.expression;
  8972. }
  8973. };
  8974. StringLiteralControlFlowReplacer.usingExistingIdentifierChance = 1;
  8975. StringLiteralControlFlowReplacer = StringLiteralControlFlowReplacer_1 = __decorate([
  8976. inversify_1.injectable(),
  8977. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IControlFlowCustomNode)),
  8978. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  8979. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  8980. __metadata("design:paramtypes", [typeof (_a = typeof TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory !== "undefined" && TControlFlowCustomNodeFactory_1.TControlFlowCustomNodeFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  8981. ], StringLiteralControlFlowReplacer);
  8982. exports.StringLiteralControlFlowReplacer = StringLiteralControlFlowReplacer;
  8983. /***/ }),
  8984. /***/ "./src/node-transformers/converting-transformers/BooleanLiteralTransformer.ts":
  8985. /*!************************************************************************************!*\
  8986. !*** ./src/node-transformers/converting-transformers/BooleanLiteralTransformer.ts ***!
  8987. \************************************************************************************/
  8988. /*! unknown exports (runtime-defined) */
  8989. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  8990. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  8991. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  8992. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  8993. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  8994. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  8995. return c > 3 && r && Object.defineProperty(target, key, r), r;
  8996. };
  8997. var __metadata = (this && this.__metadata) || function (k, v) {
  8998. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  8999. };
  9000. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9001. return function (target, key) { decorator(target, key, paramIndex); }
  9002. };
  9003. var _a, _b;
  9004. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9005. exports.BooleanLiteralTransformer = void 0;
  9006. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9007. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9008. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9009. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9010. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9011. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9012. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9013. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  9014. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  9015. let BooleanLiteralTransformer = class BooleanLiteralTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9016. constructor(randomGenerator, options) {
  9017. super(randomGenerator, options);
  9018. }
  9019. getVisitor(nodeTransformationStage) {
  9020. switch (nodeTransformationStage) {
  9021. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9022. return {
  9023. enter: (node, parentNode) => {
  9024. if (parentNode && NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  9025. return this.transformNode(node, parentNode);
  9026. }
  9027. }
  9028. };
  9029. default:
  9030. return null;
  9031. }
  9032. }
  9033. transformNode(literalNode, parentNode) {
  9034. if (typeof literalNode.value !== 'boolean') {
  9035. return literalNode;
  9036. }
  9037. const literalValue = literalNode.value;
  9038. const unaryExpressionNode = literalValue
  9039. ? this.getTrueUnaryExpressionNode()
  9040. : this.getFalseUnaryExpressionNode();
  9041. NodeUtils_1.NodeUtils.parentizeNode(unaryExpressionNode, parentNode);
  9042. return unaryExpressionNode;
  9043. }
  9044. getTrueUnaryExpressionNode() {
  9045. return NodeFactory_1.NodeFactory.unaryExpressionNode('!', this.getFalseUnaryExpressionNode());
  9046. }
  9047. getFalseUnaryExpressionNode() {
  9048. return NodeFactory_1.NodeFactory.unaryExpressionNode('!', NodeFactory_1.NodeFactory.arrayExpressionNode());
  9049. }
  9050. };
  9051. BooleanLiteralTransformer = __decorate([
  9052. inversify_1.injectable(),
  9053. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9054. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9055. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  9056. ], BooleanLiteralTransformer);
  9057. exports.BooleanLiteralTransformer = BooleanLiteralTransformer;
  9058. /***/ }),
  9059. /***/ "./src/node-transformers/converting-transformers/ExportSpecifierTransformer.ts":
  9060. /*!*************************************************************************************!*\
  9061. !*** ./src/node-transformers/converting-transformers/ExportSpecifierTransformer.ts ***!
  9062. \*************************************************************************************/
  9063. /*! unknown exports (runtime-defined) */
  9064. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9065. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9066. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9067. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9068. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9069. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9070. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9071. };
  9072. var __metadata = (this && this.__metadata) || function (k, v) {
  9073. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9074. };
  9075. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9076. return function (target, key) { decorator(target, key, paramIndex); }
  9077. };
  9078. var _a, _b;
  9079. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9080. exports.ExportSpecifierTransformer = void 0;
  9081. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9082. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9083. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9084. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9085. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9086. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9087. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9088. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  9089. let ExportSpecifierTransformer = class ExportSpecifierTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9090. constructor(randomGenerator, options) {
  9091. super(randomGenerator, options);
  9092. }
  9093. getVisitor(nodeTransformationStage) {
  9094. switch (nodeTransformationStage) {
  9095. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9096. return {
  9097. enter: (node, parentNode) => {
  9098. if (parentNode && NodeGuards_1.NodeGuards.isExportSpecifierNode(node)) {
  9099. return this.transformNode(node, parentNode);
  9100. }
  9101. }
  9102. };
  9103. default:
  9104. return null;
  9105. }
  9106. }
  9107. transformNode(exportSpecifierNode, parentNode) {
  9108. if (exportSpecifierNode.local.name === exportSpecifierNode.exported.name) {
  9109. exportSpecifierNode.exported = NodeUtils_1.NodeUtils.clone(exportSpecifierNode.local);
  9110. }
  9111. return exportSpecifierNode;
  9112. }
  9113. };
  9114. ExportSpecifierTransformer = __decorate([
  9115. inversify_1.injectable(),
  9116. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9117. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9118. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  9119. ], ExportSpecifierTransformer);
  9120. exports.ExportSpecifierTransformer = ExportSpecifierTransformer;
  9121. /***/ }),
  9122. /***/ "./src/node-transformers/converting-transformers/MemberExpressionTransformer.ts":
  9123. /*!**************************************************************************************!*\
  9124. !*** ./src/node-transformers/converting-transformers/MemberExpressionTransformer.ts ***!
  9125. \**************************************************************************************/
  9126. /*! unknown exports (runtime-defined) */
  9127. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9128. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9129. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9130. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9131. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9132. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9133. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9134. };
  9135. var __metadata = (this && this.__metadata) || function (k, v) {
  9136. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9137. };
  9138. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9139. return function (target, key) { decorator(target, key, paramIndex); }
  9140. };
  9141. var _a, _b;
  9142. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9143. exports.MemberExpressionTransformer = void 0;
  9144. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9145. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9146. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9147. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9148. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9149. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9150. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  9151. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9152. let MemberExpressionTransformer = class MemberExpressionTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9153. constructor(randomGenerator, options) {
  9154. super(randomGenerator, options);
  9155. }
  9156. getVisitor(nodeTransformationStage) {
  9157. switch (nodeTransformationStage) {
  9158. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9159. return {
  9160. enter: (node, parentNode) => {
  9161. if (parentNode && NodeGuards_1.NodeGuards.isMemberExpressionNode(node)) {
  9162. return this.transformNode(node, parentNode);
  9163. }
  9164. }
  9165. };
  9166. default:
  9167. return null;
  9168. }
  9169. }
  9170. transformNode(memberExpressionNode, parentNode) {
  9171. if (NodeGuards_1.NodeGuards.isIdentifierNode(memberExpressionNode.property)) {
  9172. if (memberExpressionNode.computed) {
  9173. return memberExpressionNode;
  9174. }
  9175. memberExpressionNode.computed = true;
  9176. memberExpressionNode.property = NodeFactory_1.NodeFactory.literalNode(memberExpressionNode.property.name);
  9177. }
  9178. return memberExpressionNode;
  9179. }
  9180. };
  9181. MemberExpressionTransformer = __decorate([
  9182. inversify_1.injectable(),
  9183. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9184. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9185. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  9186. ], MemberExpressionTransformer);
  9187. exports.MemberExpressionTransformer = MemberExpressionTransformer;
  9188. /***/ }),
  9189. /***/ "./src/node-transformers/converting-transformers/MethodDefinitionTransformer.ts":
  9190. /*!**************************************************************************************!*\
  9191. !*** ./src/node-transformers/converting-transformers/MethodDefinitionTransformer.ts ***!
  9192. \**************************************************************************************/
  9193. /*! unknown exports (runtime-defined) */
  9194. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9195. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9196. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9197. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9198. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9199. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9200. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9201. };
  9202. var __metadata = (this && this.__metadata) || function (k, v) {
  9203. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9204. };
  9205. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9206. return function (target, key) { decorator(target, key, paramIndex); }
  9207. };
  9208. var MethodDefinitionTransformer_1, _a, _b;
  9209. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9210. exports.MethodDefinitionTransformer = void 0;
  9211. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9212. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9213. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9214. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9215. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9216. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9217. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  9218. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9219. let MethodDefinitionTransformer = MethodDefinitionTransformer_1 = class MethodDefinitionTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9220. constructor(randomGenerator, options) {
  9221. super(randomGenerator, options);
  9222. }
  9223. getVisitor(nodeTransformationStage) {
  9224. switch (nodeTransformationStage) {
  9225. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9226. return {
  9227. enter: (node, parentNode) => {
  9228. if (parentNode && NodeGuards_1.NodeGuards.isMethodDefinitionNode(node)) {
  9229. return this.transformNode(node, parentNode);
  9230. }
  9231. }
  9232. };
  9233. default:
  9234. return null;
  9235. }
  9236. }
  9237. transformNode(methodDefinitionNode, parentNode) {
  9238. if (NodeGuards_1.NodeGuards.isIdentifierNode(methodDefinitionNode.key)) {
  9239. return this.replaceIdentifierKey(methodDefinitionNode, methodDefinitionNode.key);
  9240. }
  9241. if (NodeGuards_1.NodeGuards.isLiteralNode(methodDefinitionNode.key)) {
  9242. return this.replaceLiteralKey(methodDefinitionNode, methodDefinitionNode.key);
  9243. }
  9244. return methodDefinitionNode;
  9245. }
  9246. replaceIdentifierKey(methodDefinitionNode, keyNode) {
  9247. if (!MethodDefinitionTransformer_1.ignoredNames.includes(keyNode.name)
  9248. && !methodDefinitionNode.computed) {
  9249. methodDefinitionNode.computed = true;
  9250. methodDefinitionNode.key = NodeFactory_1.NodeFactory.literalNode(keyNode.name);
  9251. }
  9252. return methodDefinitionNode;
  9253. }
  9254. replaceLiteralKey(methodDefinitionNode, keyNode) {
  9255. if (typeof keyNode.value === 'string'
  9256. && !MethodDefinitionTransformer_1.ignoredNames.includes(keyNode.value)
  9257. && !methodDefinitionNode.computed) {
  9258. methodDefinitionNode.computed = true;
  9259. }
  9260. return methodDefinitionNode;
  9261. }
  9262. };
  9263. MethodDefinitionTransformer.ignoredNames = ['constructor'];
  9264. MethodDefinitionTransformer = MethodDefinitionTransformer_1 = __decorate([
  9265. inversify_1.injectable(),
  9266. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9267. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9268. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  9269. ], MethodDefinitionTransformer);
  9270. exports.MethodDefinitionTransformer = MethodDefinitionTransformer;
  9271. /***/ }),
  9272. /***/ "./src/node-transformers/converting-transformers/NumberLiteralTransformer.ts":
  9273. /*!***********************************************************************************!*\
  9274. !*** ./src/node-transformers/converting-transformers/NumberLiteralTransformer.ts ***!
  9275. \***********************************************************************************/
  9276. /*! unknown exports (runtime-defined) */
  9277. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9278. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9279. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9280. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9281. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9282. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9283. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9284. };
  9285. var __metadata = (this && this.__metadata) || function (k, v) {
  9286. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9287. };
  9288. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9289. return function (target, key) { decorator(target, key, paramIndex); }
  9290. };
  9291. var _a, _b;
  9292. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9293. exports.NumberLiteralTransformer = void 0;
  9294. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9295. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9296. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9297. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9298. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  9299. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9300. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9301. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  9302. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9303. const NumberUtils_1 = __webpack_require__(/*! ../../utils/NumberUtils */ "./src/utils/NumberUtils.ts");
  9304. let NumberLiteralTransformer = class NumberLiteralTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9305. constructor(randomGenerator, options) {
  9306. super(randomGenerator, options);
  9307. this.runAfter = [
  9308. NodeTransformer_1.NodeTransformer.NumberToNumericalExpressionTransformer
  9309. ];
  9310. this.numberLiteralCache = new Map();
  9311. }
  9312. getVisitor(nodeTransformationStage) {
  9313. switch (nodeTransformationStage) {
  9314. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9315. return {
  9316. enter: (node, parentNode) => {
  9317. if (parentNode && NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  9318. return this.transformNode(node, parentNode);
  9319. }
  9320. }
  9321. };
  9322. default:
  9323. return null;
  9324. }
  9325. }
  9326. transformNode(literalNode, parentNode) {
  9327. if (typeof literalNode.value !== 'number' && typeof literalNode.value !== 'bigint') {
  9328. return literalNode;
  9329. }
  9330. const literalValue = literalNode.value;
  9331. let rawValue;
  9332. if (this.numberLiteralCache.has(literalValue)) {
  9333. rawValue = this.numberLiteralCache.get(literalValue);
  9334. }
  9335. else {
  9336. if (NumberUtils_1.NumberUtils.isCeil(literalValue)) {
  9337. rawValue = NumberUtils_1.NumberUtils.toHex(literalValue);
  9338. }
  9339. else {
  9340. rawValue = String(literalValue);
  9341. }
  9342. this.numberLiteralCache.set(literalValue, rawValue);
  9343. }
  9344. return NodeFactory_1.NodeFactory.literalNode(literalValue, rawValue);
  9345. }
  9346. };
  9347. NumberLiteralTransformer = __decorate([
  9348. inversify_1.injectable(),
  9349. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9350. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9351. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  9352. ], NumberLiteralTransformer);
  9353. exports.NumberLiteralTransformer = NumberLiteralTransformer;
  9354. /***/ }),
  9355. /***/ "./src/node-transformers/converting-transformers/NumberToNumericalExpressionTransformer.ts":
  9356. /*!*************************************************************************************************!*\
  9357. !*** ./src/node-transformers/converting-transformers/NumberToNumericalExpressionTransformer.ts ***!
  9358. \*************************************************************************************************/
  9359. /*! unknown exports (runtime-defined) */
  9360. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9361. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9362. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9363. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9364. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9365. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9366. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9367. };
  9368. var __metadata = (this && this.__metadata) || function (k, v) {
  9369. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9370. };
  9371. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9372. return function (target, key) { decorator(target, key, paramIndex); }
  9373. };
  9374. var _a, _b, _c;
  9375. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9376. exports.NumberToNumericalExpressionTransformer = void 0;
  9377. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9378. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9379. const INumberNumericalExpressionAnalyzer_1 = __webpack_require__(/*! ../../interfaces/analyzers/number-numerical-expression-analyzer/INumberNumericalExpressionAnalyzer */ "./src/interfaces/analyzers/number-numerical-expression-analyzer/INumberNumericalExpressionAnalyzer.ts");
  9380. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9381. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9382. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9383. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9384. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9385. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  9386. const NumberUtils_1 = __webpack_require__(/*! ../../utils/NumberUtils */ "./src/utils/NumberUtils.ts");
  9387. let NumberToNumericalExpressionTransformer = class NumberToNumericalExpressionTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9388. constructor(numberNumericalExpressionAnalyzer, randomGenerator, options) {
  9389. super(randomGenerator, options);
  9390. this.numberNumericalExpressionAnalyzer = numberNumericalExpressionAnalyzer;
  9391. }
  9392. getVisitor(nodeTransformationStage) {
  9393. if (!this.options.numbersToExpressions) {
  9394. return null;
  9395. }
  9396. switch (nodeTransformationStage) {
  9397. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9398. return {
  9399. leave: (node, parentNode) => {
  9400. if (parentNode && NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  9401. return this.transformNode(node, parentNode);
  9402. }
  9403. }
  9404. };
  9405. default:
  9406. return null;
  9407. }
  9408. }
  9409. transformNode(literalNode, parentNode) {
  9410. if (typeof literalNode.value !== 'number') {
  9411. return literalNode;
  9412. }
  9413. if (NodeGuards_1.NodeGuards.isPropertyNode(parentNode) && !parentNode.computed) {
  9414. return literalNode;
  9415. }
  9416. const numberNumericalExpressionData = this.numberNumericalExpressionAnalyzer.analyze(literalNode.value);
  9417. return this.convertNumericalExpressionDataToNode(numberNumericalExpressionData);
  9418. }
  9419. convertNumericalExpressionDataToNode(numberNumericalExpressionData, operator = '+') {
  9420. var _a;
  9421. const numberNumericalExpressionDataLength = numberNumericalExpressionData.length;
  9422. const leftParts = numberNumericalExpressionDataLength > 1
  9423. ? numberNumericalExpressionData.slice(0, numberNumericalExpressionDataLength - 1)
  9424. : [numberNumericalExpressionData[0]];
  9425. const rightParts = numberNumericalExpressionDataLength > 1
  9426. ? numberNumericalExpressionData.slice(-1)
  9427. : [];
  9428. if (rightParts.length) {
  9429. return this.convertPartsToBinaryExpression(operator, leftParts, rightParts);
  9430. }
  9431. const firstLeftPartOrNumber = (_a = leftParts[0]) !== null && _a !== void 0 ? _a : null;
  9432. return Array.isArray(firstLeftPartOrNumber)
  9433. ? this.convertNumericalExpressionDataToNode(firstLeftPartOrNumber, '*')
  9434. : this.convertPartOrNumberToLiteralNode(firstLeftPartOrNumber);
  9435. }
  9436. convertPartsToBinaryExpression(operator, leftParts, rightParts) {
  9437. const rightPartOrNumber = rightParts[0];
  9438. if (Array.isArray(rightPartOrNumber)) {
  9439. return NodeFactory_1.NodeFactory.binaryExpressionNode(operator, this.convertNumericalExpressionDataToNode(leftParts), this.convertNumericalExpressionDataToNode(rightPartOrNumber, '*'));
  9440. }
  9441. else {
  9442. return NodeFactory_1.NodeFactory.binaryExpressionNode(operator, this.convertNumericalExpressionDataToNode(leftParts), this.convertPartOrNumberToLiteralNode(rightPartOrNumber));
  9443. }
  9444. }
  9445. convertPartOrNumberToLiteralNode(partOrNumber) {
  9446. const number = Array.isArray(partOrNumber)
  9447. ? partOrNumber[0]
  9448. : partOrNumber;
  9449. const isPositiveNumber = NumberUtils_1.NumberUtils.isPositive(number);
  9450. const literalNode = NodeFactory_1.NodeFactory.literalNode(Math.abs(number));
  9451. return isPositiveNumber
  9452. ? literalNode
  9453. : NodeFactory_1.NodeFactory.unaryExpressionNode('-', literalNode);
  9454. }
  9455. };
  9456. NumberToNumericalExpressionTransformer = __decorate([
  9457. inversify_1.injectable(),
  9458. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.INumberNumericalExpressionAnalyzer)),
  9459. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9460. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9461. __metadata("design:paramtypes", [typeof (_a = typeof INumberNumericalExpressionAnalyzer_1.INumberNumericalExpressionAnalyzer !== "undefined" && INumberNumericalExpressionAnalyzer_1.INumberNumericalExpressionAnalyzer) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  9462. ], NumberToNumericalExpressionTransformer);
  9463. exports.NumberToNumericalExpressionTransformer = NumberToNumericalExpressionTransformer;
  9464. /***/ }),
  9465. /***/ "./src/node-transformers/converting-transformers/ObjectExpressionKeysTransformer.ts":
  9466. /*!******************************************************************************************!*\
  9467. !*** ./src/node-transformers/converting-transformers/ObjectExpressionKeysTransformer.ts ***!
  9468. \******************************************************************************************/
  9469. /*! unknown exports (runtime-defined) */
  9470. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9471. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9472. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  9473. if (k2 === undefined) k2 = k;
  9474. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  9475. }) : (function(o, m, k, k2) {
  9476. if (k2 === undefined) k2 = k;
  9477. o[k2] = m[k];
  9478. }));
  9479. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  9480. Object.defineProperty(o, "default", { enumerable: true, value: v });
  9481. }) : function(o, v) {
  9482. o["default"] = v;
  9483. });
  9484. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9485. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9486. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9487. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9488. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9489. };
  9490. var __importStar = (this && this.__importStar) || function (mod) {
  9491. if (mod && mod.__esModule) return mod;
  9492. var result = {};
  9493. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  9494. __setModuleDefault(result, mod);
  9495. return result;
  9496. };
  9497. var __metadata = (this && this.__metadata) || function (k, v) {
  9498. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9499. };
  9500. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9501. return function (target, key) { decorator(target, key, paramIndex); }
  9502. };
  9503. var ObjectExpressionKeysTransformer_1, _a, _b, _c;
  9504. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9505. exports.ObjectExpressionKeysTransformer = void 0;
  9506. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9507. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9508. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  9509. const TObjectExpressionExtractorFactory_1 = __webpack_require__(/*! ../../types/container/node-transformers/TObjectExpressionExtractorFactory */ "./src/types/container/node-transformers/TObjectExpressionExtractorFactory.ts");
  9510. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9511. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9512. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9513. const ObjectExpressionExtractor_1 = __webpack_require__(/*! ../../enums/node-transformers/converting-transformers/properties-extractors/ObjectExpressionExtractor */ "./src/enums/node-transformers/converting-transformers/properties-extractors/ObjectExpressionExtractor.ts");
  9514. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9515. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9516. const NodeStatementUtils_1 = __webpack_require__(/*! ../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  9517. let ObjectExpressionKeysTransformer = ObjectExpressionKeysTransformer_1 = class ObjectExpressionKeysTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9518. constructor(objectExpressionExtractorFactory, randomGenerator, options) {
  9519. super(randomGenerator, options);
  9520. this.objectExpressionExtractorFactory = objectExpressionExtractorFactory;
  9521. }
  9522. static isProhibitedHostStatement(objectExpressionNode, hostStatement) {
  9523. return ObjectExpressionKeysTransformer_1.isReferencedIdentifierName(objectExpressionNode, hostStatement)
  9524. || ObjectExpressionKeysTransformer_1.isProhibitedSequenceExpression(objectExpressionNode, hostStatement);
  9525. }
  9526. static isReferencedIdentifierName(objectExpressionNode, hostNode) {
  9527. const identifierNamesSet = [];
  9528. let isReferencedIdentifierName = false;
  9529. let isCurrentNode = false;
  9530. estraverse.traverse(hostNode, {
  9531. enter: (node) => {
  9532. if (node === objectExpressionNode) {
  9533. isCurrentNode = true;
  9534. }
  9535. if (!NodeGuards_1.NodeGuards.isIdentifierNode(node)) {
  9536. return;
  9537. }
  9538. if (!isCurrentNode) {
  9539. identifierNamesSet.push(node.name);
  9540. return;
  9541. }
  9542. if (identifierNamesSet.includes(node.name)) {
  9543. isReferencedIdentifierName = true;
  9544. }
  9545. },
  9546. leave: (node) => {
  9547. if (node === objectExpressionNode) {
  9548. isCurrentNode = false;
  9549. return estraverse.VisitorOption.Break;
  9550. }
  9551. }
  9552. });
  9553. return isReferencedIdentifierName;
  9554. }
  9555. static isProhibitedSequenceExpression(objectExpressionNode, hostNode) {
  9556. return NodeGuards_1.NodeGuards.isExpressionStatementNode(hostNode)
  9557. && NodeGuards_1.NodeGuards.isSequenceExpressionNode(hostNode.expression)
  9558. && hostNode.expression.expressions.some((expressionNode) => NodeGuards_1.NodeGuards.isCallExpressionNode(expressionNode)
  9559. && NodeGuards_1.NodeGuards.isSuperNode(expressionNode.callee));
  9560. }
  9561. getVisitor(nodeTransformationStage) {
  9562. if (!this.options.transformObjectKeys) {
  9563. return null;
  9564. }
  9565. switch (nodeTransformationStage) {
  9566. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9567. return {
  9568. leave: (node, parentNode) => {
  9569. if (parentNode
  9570. && NodeGuards_1.NodeGuards.isObjectExpressionNode(node)) {
  9571. return this.transformNode(node, parentNode);
  9572. }
  9573. }
  9574. };
  9575. default:
  9576. return null;
  9577. }
  9578. }
  9579. transformNode(objectExpressionNode, parentNode) {
  9580. if (!objectExpressionNode.properties.length) {
  9581. return objectExpressionNode;
  9582. }
  9583. const hostStatement = NodeStatementUtils_1.NodeStatementUtils.getRootStatementOfNode(objectExpressionNode);
  9584. if (ObjectExpressionKeysTransformer_1.isProhibitedHostStatement(objectExpressionNode, hostStatement)) {
  9585. return objectExpressionNode;
  9586. }
  9587. return this.applyObjectExpressionKeysExtractorsRecursive(ObjectExpressionKeysTransformer_1.objectExpressionExtractorNames, objectExpressionNode, hostStatement);
  9588. }
  9589. applyObjectExpressionKeysExtractorsRecursive(objectExpressionExtractorNames, objectExpressionNode, hostStatement) {
  9590. const newObjectExpressionExtractorNames = [...objectExpressionExtractorNames];
  9591. const objectExpressionExtractor = newObjectExpressionExtractorNames.shift();
  9592. if (!objectExpressionExtractor) {
  9593. return objectExpressionNode;
  9594. }
  9595. const { nodeToReplace, objectExpressionHostStatement: newObjectExpressionHostStatement, objectExpressionNode: newObjectExpressionNode } = this.objectExpressionExtractorFactory(objectExpressionExtractor)
  9596. .extract(objectExpressionNode, hostStatement);
  9597. this.applyObjectExpressionKeysExtractorsRecursive(newObjectExpressionExtractorNames, newObjectExpressionNode, newObjectExpressionHostStatement);
  9598. return nodeToReplace;
  9599. }
  9600. };
  9601. ObjectExpressionKeysTransformer.objectExpressionExtractorNames = [
  9602. ObjectExpressionExtractor_1.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor,
  9603. ObjectExpressionExtractor_1.ObjectExpressionExtractor.BasePropertiesExtractor
  9604. ];
  9605. ObjectExpressionKeysTransformer = ObjectExpressionKeysTransformer_1 = __decorate([
  9606. inversify_1.injectable(),
  9607. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IObjectExpressionExtractor)),
  9608. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9609. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9610. __metadata("design:paramtypes", [typeof (_a = typeof TObjectExpressionExtractorFactory_1.TObjectExpressionExtractorFactory !== "undefined" && TObjectExpressionExtractorFactory_1.TObjectExpressionExtractorFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  9611. ], ObjectExpressionKeysTransformer);
  9612. exports.ObjectExpressionKeysTransformer = ObjectExpressionKeysTransformer;
  9613. /***/ }),
  9614. /***/ "./src/node-transformers/converting-transformers/ObjectExpressionTransformer.ts":
  9615. /*!**************************************************************************************!*\
  9616. !*** ./src/node-transformers/converting-transformers/ObjectExpressionTransformer.ts ***!
  9617. \**************************************************************************************/
  9618. /*! unknown exports (runtime-defined) */
  9619. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9620. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9621. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9622. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9623. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9624. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9625. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9626. };
  9627. var __metadata = (this && this.__metadata) || function (k, v) {
  9628. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9629. };
  9630. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9631. return function (target, key) { decorator(target, key, paramIndex); }
  9632. };
  9633. var _a, _b;
  9634. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9635. exports.ObjectExpressionTransformer = void 0;
  9636. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9637. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9638. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9639. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9640. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9641. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9642. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  9643. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9644. let ObjectExpressionTransformer = class ObjectExpressionTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9645. constructor(randomGenerator, options) {
  9646. super(randomGenerator, options);
  9647. }
  9648. getVisitor(nodeTransformationStage) {
  9649. switch (nodeTransformationStage) {
  9650. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9651. return {
  9652. enter: (node, parentNode) => {
  9653. if (parentNode && NodeGuards_1.NodeGuards.isObjectExpressionNode(node)) {
  9654. return this.transformNode(node, parentNode);
  9655. }
  9656. }
  9657. };
  9658. default:
  9659. return null;
  9660. }
  9661. }
  9662. transformNode(objectExpressionNode, parentNode) {
  9663. objectExpressionNode.properties
  9664. .forEach((property) => {
  9665. if (!NodeGuards_1.NodeGuards.isPropertyNode(property)) {
  9666. return;
  9667. }
  9668. if (!property.key) {
  9669. return;
  9670. }
  9671. if (property.computed) {
  9672. this.transformComputedProperty(property);
  9673. }
  9674. else {
  9675. this.transformBaseProperty(property);
  9676. }
  9677. });
  9678. return objectExpressionNode;
  9679. }
  9680. transformComputedProperty(property) {
  9681. if (!NodeGuards_1.NodeGuards.isLiteralNode(property.key) || !(typeof property.key.value === 'string')) {
  9682. return;
  9683. }
  9684. property.key = NodeFactory_1.NodeFactory.literalNode(property.key.value);
  9685. }
  9686. transformBaseProperty(property) {
  9687. if (property.shorthand) {
  9688. property.shorthand = false;
  9689. }
  9690. if (!NodeGuards_1.NodeGuards.isIdentifierNode(property.key)) {
  9691. return;
  9692. }
  9693. property.key = NodeFactory_1.NodeFactory.literalNode(property.key.name);
  9694. }
  9695. };
  9696. ObjectExpressionTransformer = __decorate([
  9697. inversify_1.injectable(),
  9698. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9699. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9700. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  9701. ], ObjectExpressionTransformer);
  9702. exports.ObjectExpressionTransformer = ObjectExpressionTransformer;
  9703. /***/ }),
  9704. /***/ "./src/node-transformers/converting-transformers/ObjectPatternPropertiesTransformer.ts":
  9705. /*!*********************************************************************************************!*\
  9706. !*** ./src/node-transformers/converting-transformers/ObjectPatternPropertiesTransformer.ts ***!
  9707. \*********************************************************************************************/
  9708. /*! unknown exports (runtime-defined) */
  9709. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9710. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9711. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9712. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9713. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9714. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9715. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9716. };
  9717. var __metadata = (this && this.__metadata) || function (k, v) {
  9718. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9719. };
  9720. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9721. return function (target, key) { decorator(target, key, paramIndex); }
  9722. };
  9723. var _a, _b;
  9724. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9725. exports.ObjectPatternPropertiesTransformer = void 0;
  9726. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9727. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9728. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9729. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9730. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9731. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9732. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9733. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  9734. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  9735. let ObjectPatternPropertiesTransformer = class ObjectPatternPropertiesTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9736. constructor(randomGenerator, options) {
  9737. super(randomGenerator, options);
  9738. }
  9739. getVisitor(nodeTransformationStage) {
  9740. switch (nodeTransformationStage) {
  9741. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9742. return {
  9743. enter: (node, parentNode) => {
  9744. if (parentNode && NodeGuards_1.NodeGuards.isPropertyNode(node)) {
  9745. return this.transformNode(node, parentNode);
  9746. }
  9747. }
  9748. };
  9749. default:
  9750. return null;
  9751. }
  9752. }
  9753. transformNode(propertyNode, parentNode) {
  9754. if (!NodeGuards_1.NodeGuards.isObjectPatternNode(parentNode) || !propertyNode.shorthand) {
  9755. return propertyNode;
  9756. }
  9757. if (!this.options.renameGlobals) {
  9758. const lexicalScope = NodeLexicalScopeUtils_1.NodeLexicalScopeUtils.getLexicalScope(propertyNode);
  9759. const shouldNotTransformGlobalPropertyNode = !!lexicalScope && NodeGuards_1.NodeGuards.isProgramNode(lexicalScope);
  9760. if (shouldNotTransformGlobalPropertyNode) {
  9761. return propertyNode;
  9762. }
  9763. }
  9764. propertyNode.shorthand = false;
  9765. propertyNode.value = NodeUtils_1.NodeUtils.clone(propertyNode.value);
  9766. NodeUtils_1.NodeUtils.parentizeNode(propertyNode.value, propertyNode);
  9767. return propertyNode;
  9768. }
  9769. };
  9770. ObjectPatternPropertiesTransformer = __decorate([
  9771. inversify_1.injectable(),
  9772. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9773. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9774. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  9775. ], ObjectPatternPropertiesTransformer);
  9776. exports.ObjectPatternPropertiesTransformer = ObjectPatternPropertiesTransformer;
  9777. /***/ }),
  9778. /***/ "./src/node-transformers/converting-transformers/SplitStringTransformer.ts":
  9779. /*!*********************************************************************************!*\
  9780. !*** ./src/node-transformers/converting-transformers/SplitStringTransformer.ts ***!
  9781. \*********************************************************************************/
  9782. /*! unknown exports (runtime-defined) */
  9783. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9784. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9785. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  9786. if (k2 === undefined) k2 = k;
  9787. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  9788. }) : (function(o, m, k, k2) {
  9789. if (k2 === undefined) k2 = k;
  9790. o[k2] = m[k];
  9791. }));
  9792. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  9793. Object.defineProperty(o, "default", { enumerable: true, value: v });
  9794. }) : function(o, v) {
  9795. o["default"] = v;
  9796. });
  9797. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9798. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9799. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9800. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9801. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9802. };
  9803. var __importStar = (this && this.__importStar) || function (mod) {
  9804. if (mod && mod.__esModule) return mod;
  9805. var result = {};
  9806. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  9807. __setModuleDefault(result, mod);
  9808. return result;
  9809. };
  9810. var __metadata = (this && this.__metadata) || function (k, v) {
  9811. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9812. };
  9813. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9814. return function (target, key) { decorator(target, key, paramIndex); }
  9815. };
  9816. var SplitStringTransformer_1, _a, _b;
  9817. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9818. exports.SplitStringTransformer = void 0;
  9819. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9820. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9821. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  9822. const stringz = __importStar(__webpack_require__(/*! stringz */ "stringz"));
  9823. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9824. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9825. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  9826. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9827. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9828. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  9829. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9830. const NodeLiteralUtils_1 = __webpack_require__(/*! ../../node/NodeLiteralUtils */ "./src/node/NodeLiteralUtils.ts");
  9831. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  9832. let SplitStringTransformer = SplitStringTransformer_1 = class SplitStringTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9833. constructor(randomGenerator, options) {
  9834. super(randomGenerator, options);
  9835. this.runAfter = [
  9836. NodeTransformer_1.NodeTransformer.ObjectExpressionKeysTransformer,
  9837. NodeTransformer_1.NodeTransformer.TemplateLiteralTransformer
  9838. ];
  9839. }
  9840. static chunkString(string, stringLength, chunkSize) {
  9841. const chunksCount = Math.ceil(stringLength / chunkSize);
  9842. const chunks = [];
  9843. let nextChunkStartIndex = 0;
  9844. for (let chunkIndex = 0; chunkIndex < chunksCount; ++chunkIndex, nextChunkStartIndex += chunkSize) {
  9845. chunks[chunkIndex] = stringz.substr(string, nextChunkStartIndex, chunkSize);
  9846. }
  9847. return chunks;
  9848. }
  9849. getVisitor(nodeTransformationStage) {
  9850. switch (nodeTransformationStage) {
  9851. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9852. return {
  9853. enter: (node, parentNode) => {
  9854. if (!this.options.splitStrings) {
  9855. return;
  9856. }
  9857. if (parentNode && NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  9858. return this.transformNode(node, parentNode);
  9859. }
  9860. }
  9861. };
  9862. default:
  9863. return null;
  9864. }
  9865. }
  9866. transformNode(literalNode, parentNode) {
  9867. if (NodeLiteralUtils_1.NodeLiteralUtils.isProhibitedLiteralNode(literalNode, parentNode)) {
  9868. return literalNode;
  9869. }
  9870. const firstPassChunksNode = this.transformLiteralNodeByChunkLength(literalNode, parentNode, SplitStringTransformer_1.firstPassChunkLength);
  9871. const secondPassChunksNode = estraverse.replace(firstPassChunksNode, {
  9872. enter: (node, parentNode) => {
  9873. if (parentNode && NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  9874. return this.transformLiteralNodeByChunkLength(node, parentNode, this.options.splitStringsChunkLength);
  9875. }
  9876. }
  9877. });
  9878. return secondPassChunksNode;
  9879. }
  9880. transformLiteralNodeByChunkLength(literalNode, parentNode, chunkLength) {
  9881. if (!NodeLiteralUtils_1.NodeLiteralUtils.isStringLiteralNode(literalNode)) {
  9882. return literalNode;
  9883. }
  9884. const valueLength = stringz.length(literalNode.value);
  9885. if (chunkLength >= valueLength) {
  9886. return literalNode;
  9887. }
  9888. const stringChunks = SplitStringTransformer_1.chunkString(literalNode.value, valueLength, chunkLength);
  9889. const binaryExpressionNode = this.transformStringChunksToBinaryExpressionNode(stringChunks);
  9890. NodeUtils_1.NodeUtils.parentizeAst(binaryExpressionNode);
  9891. NodeUtils_1.NodeUtils.parentizeNode(binaryExpressionNode, parentNode);
  9892. return binaryExpressionNode;
  9893. }
  9894. transformStringChunksToBinaryExpressionNode(chunks) {
  9895. const firstChunk = chunks.shift();
  9896. const secondChunk = chunks.shift();
  9897. if (!firstChunk || !secondChunk) {
  9898. throw new Error('First and second chunks values should not be empty');
  9899. }
  9900. const initialBinaryExpressionNode = NodeFactory_1.NodeFactory.binaryExpressionNode('+', NodeFactory_1.NodeFactory.literalNode(firstChunk), NodeFactory_1.NodeFactory.literalNode(secondChunk));
  9901. return chunks.reduce((binaryExpressionNode, chunk) => {
  9902. const chunkLiteralNode = NodeFactory_1.NodeFactory.literalNode(chunk);
  9903. return NodeFactory_1.NodeFactory.binaryExpressionNode('+', binaryExpressionNode, chunkLiteralNode);
  9904. }, initialBinaryExpressionNode);
  9905. }
  9906. };
  9907. SplitStringTransformer.firstPassChunkLength = 1000;
  9908. SplitStringTransformer = SplitStringTransformer_1 = __decorate([
  9909. inversify_1.injectable(),
  9910. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  9911. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  9912. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  9913. ], SplitStringTransformer);
  9914. exports.SplitStringTransformer = SplitStringTransformer;
  9915. /***/ }),
  9916. /***/ "./src/node-transformers/converting-transformers/TemplateLiteralTransformer.ts":
  9917. /*!*************************************************************************************!*\
  9918. !*** ./src/node-transformers/converting-transformers/TemplateLiteralTransformer.ts ***!
  9919. \*************************************************************************************/
  9920. /*! unknown exports (runtime-defined) */
  9921. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  9922. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  9923. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  9924. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  9925. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  9926. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  9927. return c > 3 && r && Object.defineProperty(target, key, r), r;
  9928. };
  9929. var __metadata = (this && this.__metadata) || function (k, v) {
  9930. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  9931. };
  9932. var __param = (this && this.__param) || function (paramIndex, decorator) {
  9933. return function (target, key) { decorator(target, key, paramIndex); }
  9934. };
  9935. var TemplateLiteralTransformer_1, _a, _b;
  9936. Object.defineProperty(exports, "__esModule", ({ value: true }));
  9937. exports.TemplateLiteralTransformer = void 0;
  9938. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  9939. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  9940. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  9941. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  9942. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  9943. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  9944. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  9945. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  9946. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  9947. let TemplateLiteralTransformer = TemplateLiteralTransformer_1 = class TemplateLiteralTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  9948. constructor(randomGenerator, options) {
  9949. super(randomGenerator, options);
  9950. }
  9951. static isLiteralNodeWithStringValue(node) {
  9952. return !!node && NodeGuards_1.NodeGuards.isLiteralNode(node) && typeof node.value === 'string';
  9953. }
  9954. getVisitor(nodeTransformationStage) {
  9955. switch (nodeTransformationStage) {
  9956. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  9957. return {
  9958. enter: (node, parentNode) => {
  9959. if (parentNode && NodeGuards_1.NodeGuards.isTemplateLiteralNode(node)) {
  9960. return this.transformNode(node, parentNode);
  9961. }
  9962. }
  9963. };
  9964. default:
  9965. return null;
  9966. }
  9967. }
  9968. transformNode(templateLiteralNode, parentNode) {
  9969. if (NodeGuards_1.NodeGuards.isTaggedTemplateExpressionNode(parentNode)) {
  9970. return templateLiteralNode;
  9971. }
  9972. return this.transformTemplateLiteralNode(templateLiteralNode, parentNode);
  9973. }
  9974. transformTemplateLiteralNode(templateLiteralNode, parentNode) {
  9975. const templateLiteralExpressions = templateLiteralNode.expressions;
  9976. let nodes = [];
  9977. templateLiteralNode.quasis.forEach((templateElement) => {
  9978. nodes.push(NodeFactory_1.NodeFactory.literalNode(templateElement.value.cooked));
  9979. const expression = templateLiteralExpressions.shift();
  9980. if (!expression) {
  9981. return;
  9982. }
  9983. nodes.push(expression);
  9984. });
  9985. nodes = nodes.filter((node) => {
  9986. return !(NodeGuards_1.NodeGuards.isLiteralNode(node) && node.value === '');
  9987. });
  9988. if (!TemplateLiteralTransformer_1.isLiteralNodeWithStringValue(nodes[0]) &&
  9989. !TemplateLiteralTransformer_1.isLiteralNodeWithStringValue(nodes[1])) {
  9990. nodes.unshift(NodeFactory_1.NodeFactory.literalNode(''));
  9991. }
  9992. let transformedNode;
  9993. if (nodes.length > 1) {
  9994. let root = NodeFactory_1.NodeFactory.binaryExpressionNode('+', nodes.shift(), nodes.shift());
  9995. nodes.forEach((node) => {
  9996. root = NodeFactory_1.NodeFactory.binaryExpressionNode('+', root, node);
  9997. });
  9998. transformedNode = root;
  9999. }
  10000. else {
  10001. transformedNode = nodes[0];
  10002. }
  10003. NodeUtils_1.NodeUtils.parentizeAst(transformedNode);
  10004. NodeUtils_1.NodeUtils.parentizeNode(transformedNode, parentNode);
  10005. return transformedNode;
  10006. }
  10007. };
  10008. TemplateLiteralTransformer = TemplateLiteralTransformer_1 = __decorate([
  10009. inversify_1.injectable(),
  10010. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  10011. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  10012. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  10013. ], TemplateLiteralTransformer);
  10014. exports.TemplateLiteralTransformer = TemplateLiteralTransformer;
  10015. /***/ }),
  10016. /***/ "./src/node-transformers/converting-transformers/object-expression-extractors/BasePropertiesExtractor.ts":
  10017. /*!***************************************************************************************************************!*\
  10018. !*** ./src/node-transformers/converting-transformers/object-expression-extractors/BasePropertiesExtractor.ts ***!
  10019. \***************************************************************************************************************/
  10020. /*! unknown exports (runtime-defined) */
  10021. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  10022. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  10023. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  10024. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  10025. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  10026. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  10027. return c > 3 && r && Object.defineProperty(target, key, r), r;
  10028. };
  10029. var BasePropertiesExtractor_1;
  10030. Object.defineProperty(exports, "__esModule", ({ value: true }));
  10031. exports.BasePropertiesExtractor = void 0;
  10032. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  10033. const NodeAppender_1 = __webpack_require__(/*! ../../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  10034. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  10035. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  10036. const NodeStatementUtils_1 = __webpack_require__(/*! ../../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  10037. const NodeUtils_1 = __webpack_require__(/*! ../../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  10038. let BasePropertiesExtractor = BasePropertiesExtractor_1 = class BasePropertiesExtractor {
  10039. static getPropertyNodeKeyName(propertyNode) {
  10040. const propertyKeyNode = propertyNode.key;
  10041. if (NodeGuards_1.NodeGuards.isLiteralNode(propertyKeyNode)
  10042. && (typeof propertyKeyNode.value === 'string'
  10043. || typeof propertyKeyNode.value === 'number')) {
  10044. return propertyKeyNode.value.toString();
  10045. }
  10046. if (NodeGuards_1.NodeGuards.isIdentifierNode(propertyKeyNode)) {
  10047. return propertyKeyNode.name;
  10048. }
  10049. return null;
  10050. }
  10051. static isProhibitedPropertyNode(node) {
  10052. return node.kind !== 'init';
  10053. }
  10054. static isProhibitedPattern(node) {
  10055. return !node
  10056. || NodeGuards_1.NodeGuards.isObjectPatternNode(node)
  10057. || NodeGuards_1.NodeGuards.isArrayPatternNode(node)
  10058. || NodeGuards_1.NodeGuards.isAssignmentPatternNode(node)
  10059. || NodeGuards_1.NodeGuards.isRestElementNode(node);
  10060. }
  10061. static shouldCreateLiteralNode(property) {
  10062. return !property.computed
  10063. || (property.computed && !!property.key && NodeGuards_1.NodeGuards.isLiteralNode(property.key));
  10064. }
  10065. extract(objectExpressionNode, hostStatement) {
  10066. const hostNode = objectExpressionNode.parentNode;
  10067. if (hostNode
  10068. && NodeGuards_1.NodeGuards.isVariableDeclaratorNode(hostNode)
  10069. && NodeGuards_1.NodeGuards.isIdentifierNode(hostNode.id)) {
  10070. return this.transformObjectExpressionNode(objectExpressionNode, hostStatement, hostNode.id);
  10071. }
  10072. return {
  10073. nodeToReplace: objectExpressionNode,
  10074. objectExpressionHostStatement: hostStatement,
  10075. objectExpressionNode: objectExpressionNode
  10076. };
  10077. }
  10078. transformObjectExpressionNode(objectExpressionNode, hostStatement, memberExpressionHostNode) {
  10079. const properties = objectExpressionNode.properties;
  10080. const [expressionStatements, removablePropertyIds] = this
  10081. .extractPropertiesToExpressionStatements(properties, hostStatement, memberExpressionHostNode);
  10082. const hostNodeWithStatements = NodeStatementUtils_1.NodeStatementUtils.getScopeOfNode(hostStatement);
  10083. this.filterExtractedObjectExpressionProperties(objectExpressionNode, removablePropertyIds);
  10084. NodeAppender_1.NodeAppender.insertAfter(hostNodeWithStatements, expressionStatements, hostStatement);
  10085. NodeUtils_1.NodeUtils.parentizeAst(hostNodeWithStatements);
  10086. return {
  10087. nodeToReplace: objectExpressionNode,
  10088. objectExpressionHostStatement: hostStatement,
  10089. objectExpressionNode: objectExpressionNode
  10090. };
  10091. }
  10092. extractPropertiesToExpressionStatements(properties, hostStatement, memberExpressionHostNode) {
  10093. const propertiesLength = properties.length;
  10094. const expressionStatements = [];
  10095. const removablePropertyIds = [];
  10096. for (let i = propertiesLength - 1; i >= 0; i--) {
  10097. const property = properties[i];
  10098. if (NodeGuards_1.NodeGuards.isSpreadElementNode(property)) {
  10099. break;
  10100. }
  10101. if (BasePropertiesExtractor_1.isProhibitedPropertyNode(property)) {
  10102. continue;
  10103. }
  10104. const propertyValue = property.value;
  10105. if (BasePropertiesExtractor_1.isProhibitedPattern(propertyValue)) {
  10106. continue;
  10107. }
  10108. const propertyKeyName = BasePropertiesExtractor_1.getPropertyNodeKeyName(property);
  10109. if (!propertyKeyName) {
  10110. continue;
  10111. }
  10112. const shouldCreateLiteralNode = BasePropertiesExtractor_1.shouldCreateLiteralNode(property);
  10113. const memberExpressionProperty = shouldCreateLiteralNode
  10114. ? NodeFactory_1.NodeFactory.literalNode(propertyKeyName)
  10115. : NodeFactory_1.NodeFactory.identifierNode(propertyKeyName);
  10116. const memberExpressionNode = NodeFactory_1.NodeFactory
  10117. .memberExpressionNode(memberExpressionHostNode, memberExpressionProperty, true);
  10118. const expressionStatementNode = NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.assignmentExpressionNode('=', memberExpressionNode, propertyValue));
  10119. if (NodeGuards_1.NodeGuards.isObjectExpressionNode(property.value)) {
  10120. this.transformObjectExpressionNode(property.value, hostStatement, memberExpressionNode);
  10121. }
  10122. expressionStatements.unshift(expressionStatementNode);
  10123. removablePropertyIds.unshift(i);
  10124. }
  10125. return [expressionStatements, removablePropertyIds];
  10126. }
  10127. filterExtractedObjectExpressionProperties(objectExpressionNode, removablePropertyIds) {
  10128. objectExpressionNode.properties = objectExpressionNode.properties
  10129. .filter((property, index) => !removablePropertyIds.includes(index));
  10130. }
  10131. };
  10132. BasePropertiesExtractor = BasePropertiesExtractor_1 = __decorate([
  10133. inversify_1.injectable()
  10134. ], BasePropertiesExtractor);
  10135. exports.BasePropertiesExtractor = BasePropertiesExtractor;
  10136. /***/ }),
  10137. /***/ "./src/node-transformers/converting-transformers/object-expression-extractors/ObjectExpressionToVariableDeclarationExtractor.ts":
  10138. /*!**************************************************************************************************************************************!*\
  10139. !*** ./src/node-transformers/converting-transformers/object-expression-extractors/ObjectExpressionToVariableDeclarationExtractor.ts ***!
  10140. \**************************************************************************************************************************************/
  10141. /*! unknown exports (runtime-defined) */
  10142. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  10143. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  10144. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  10145. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  10146. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  10147. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  10148. return c > 3 && r && Object.defineProperty(target, key, r), r;
  10149. };
  10150. var __metadata = (this && this.__metadata) || function (k, v) {
  10151. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  10152. };
  10153. var __param = (this && this.__param) || function (paramIndex, decorator) {
  10154. return function (target, key) { decorator(target, key, paramIndex); }
  10155. };
  10156. var _a;
  10157. Object.defineProperty(exports, "__esModule", ({ value: true }));
  10158. exports.ObjectExpressionToVariableDeclarationExtractor = void 0;
  10159. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  10160. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  10161. const TObjectExpressionKeysTransformerCustomNodeFactory_1 = __webpack_require__(/*! ../../../types/container/custom-nodes/TObjectExpressionKeysTransformerCustomNodeFactory */ "./src/types/container/custom-nodes/TObjectExpressionKeysTransformerCustomNodeFactory.ts");
  10162. const ObjectExpressionKeysTransformerCustomNode_1 = __webpack_require__(/*! ../../../enums/custom-nodes/ObjectExpressionKeysTransformerCustomNode */ "./src/enums/custom-nodes/ObjectExpressionKeysTransformerCustomNode.ts");
  10163. const NodeAppender_1 = __webpack_require__(/*! ../../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  10164. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  10165. const NodeStatementUtils_1 = __webpack_require__(/*! ../../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  10166. const NodeUtils_1 = __webpack_require__(/*! ../../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  10167. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  10168. let ObjectExpressionToVariableDeclarationExtractor = class ObjectExpressionToVariableDeclarationExtractor {
  10169. constructor(objectExpressionKeysTransformerCustomNodeFactory) {
  10170. this.objectExpressionKeysTransformerCustomNodeFactory = objectExpressionKeysTransformerCustomNodeFactory;
  10171. }
  10172. extract(objectExpressionNode, hostStatement) {
  10173. return this.transformObjectExpressionToVariableDeclaration(objectExpressionNode, hostStatement);
  10174. }
  10175. transformObjectExpressionToVariableDeclaration(objectExpressionNode, hostStatement) {
  10176. var _a;
  10177. const hostNodeWithStatements = NodeStatementUtils_1.NodeStatementUtils.getScopeOfNode(hostStatement);
  10178. const lexicalScopeNode = NodeGuards_1.NodeGuards.isNodeWithLexicalScope(hostNodeWithStatements)
  10179. ? hostNodeWithStatements
  10180. : (_a = NodeLexicalScopeUtils_1.NodeLexicalScopeUtils.getLexicalScope(hostNodeWithStatements)) !== null && _a !== void 0 ? _a : null;
  10181. if (!lexicalScopeNode) {
  10182. throw new Error('Cannot find lexical scope node for the host statement node');
  10183. }
  10184. const properties = objectExpressionNode.properties;
  10185. const newObjectExpressionHostStatement = this.getObjectExpressionHostNode(lexicalScopeNode, properties);
  10186. const statementsToInsert = [newObjectExpressionHostStatement];
  10187. NodeAppender_1.NodeAppender.insertBefore(hostNodeWithStatements, statementsToInsert, hostStatement);
  10188. NodeUtils_1.NodeUtils.parentizeAst(newObjectExpressionHostStatement);
  10189. NodeUtils_1.NodeUtils.parentizeNode(newObjectExpressionHostStatement, hostNodeWithStatements);
  10190. const newObjectExpressionIdentifier = this.getObjectExpressionIdentifierNode(newObjectExpressionHostStatement);
  10191. const newObjectExpressionNode = this.getObjectExpressionNode(newObjectExpressionHostStatement);
  10192. return {
  10193. nodeToReplace: newObjectExpressionIdentifier,
  10194. objectExpressionHostStatement: newObjectExpressionHostStatement,
  10195. objectExpressionNode: newObjectExpressionNode
  10196. };
  10197. }
  10198. getObjectExpressionHostNode(lexicalScopeNode, properties) {
  10199. const variableDeclarationHostNodeCustomNode = this.objectExpressionKeysTransformerCustomNodeFactory(ObjectExpressionKeysTransformerCustomNode_1.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode);
  10200. variableDeclarationHostNodeCustomNode.initialize(lexicalScopeNode, properties);
  10201. const statementNode = variableDeclarationHostNodeCustomNode.getNode()[0];
  10202. if (!statementNode
  10203. || !NodeGuards_1.NodeGuards.isVariableDeclarationNode(statementNode)) {
  10204. throw new Error('`objectExpressionHostCustomNode.getNode()[0]` should returns array with `VariableDeclaration` node');
  10205. }
  10206. return statementNode;
  10207. }
  10208. getObjectExpressionIdentifierNode(objectExpressionHostNode) {
  10209. const newObjectExpressionIdentifierNode = objectExpressionHostNode.declarations[0].id;
  10210. if (!NodeGuards_1.NodeGuards.isIdentifierNode(newObjectExpressionIdentifierNode)) {
  10211. throw new Error('`objectExpressionHostNode` should contain `VariableDeclarator` node with `Identifier` id property');
  10212. }
  10213. return newObjectExpressionIdentifierNode;
  10214. }
  10215. getObjectExpressionNode(objectExpressionHostNode) {
  10216. var _a;
  10217. const newObjectExpressionNode = (_a = objectExpressionHostNode.declarations[0].init) !== null && _a !== void 0 ? _a : null;
  10218. if (!newObjectExpressionNode || !NodeGuards_1.NodeGuards.isObjectExpressionNode(newObjectExpressionNode)) {
  10219. throw new Error('`objectExpressionHostNode` should contain `VariableDeclarator` node with `ObjectExpression` init property');
  10220. }
  10221. return newObjectExpressionNode;
  10222. }
  10223. };
  10224. ObjectExpressionToVariableDeclarationExtractor = __decorate([
  10225. inversify_1.injectable(),
  10226. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode)),
  10227. __metadata("design:paramtypes", [typeof (_a = typeof TObjectExpressionKeysTransformerCustomNodeFactory_1.TObjectExpressionKeysTransformerCustomNodeFactory !== "undefined" && TObjectExpressionKeysTransformerCustomNodeFactory_1.TObjectExpressionKeysTransformerCustomNodeFactory) === "function" ? _a : Object])
  10228. ], ObjectExpressionToVariableDeclarationExtractor);
  10229. exports.ObjectExpressionToVariableDeclarationExtractor = ObjectExpressionToVariableDeclarationExtractor;
  10230. /***/ }),
  10231. /***/ "./src/node-transformers/dead-code-injection-transformers/DeadCodeInjectionTransformer.ts":
  10232. /*!************************************************************************************************!*\
  10233. !*** ./src/node-transformers/dead-code-injection-transformers/DeadCodeInjectionTransformer.ts ***!
  10234. \************************************************************************************************/
  10235. /*! unknown exports (runtime-defined) */
  10236. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  10237. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  10238. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  10239. if (k2 === undefined) k2 = k;
  10240. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  10241. }) : (function(o, m, k, k2) {
  10242. if (k2 === undefined) k2 = k;
  10243. o[k2] = m[k];
  10244. }));
  10245. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  10246. Object.defineProperty(o, "default", { enumerable: true, value: v });
  10247. }) : function(o, v) {
  10248. o["default"] = v;
  10249. });
  10250. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  10251. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  10252. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  10253. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  10254. return c > 3 && r && Object.defineProperty(target, key, r), r;
  10255. };
  10256. var __importStar = (this && this.__importStar) || function (mod) {
  10257. if (mod && mod.__esModule) return mod;
  10258. var result = {};
  10259. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  10260. __setModuleDefault(result, mod);
  10261. return result;
  10262. };
  10263. var __metadata = (this && this.__metadata) || function (k, v) {
  10264. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  10265. };
  10266. var __param = (this && this.__param) || function (paramIndex, decorator) {
  10267. return function (target, key) { decorator(target, key, paramIndex); }
  10268. };
  10269. var DeadCodeInjectionTransformer_1, _a, _b, _c, _d;
  10270. Object.defineProperty(exports, "__esModule", ({ value: true }));
  10271. exports.DeadCodeInjectionTransformer = void 0;
  10272. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  10273. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  10274. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  10275. const TDeadNodeInjectionCustomNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/TDeadNodeInjectionCustomNodeFactory */ "./src/types/container/custom-nodes/TDeadNodeInjectionCustomNodeFactory.ts");
  10276. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  10277. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  10278. const INodeTransformersRunner_1 = __webpack_require__(/*! ../../interfaces/node-transformers/INodeTransformersRunner */ "./src/interfaces/node-transformers/INodeTransformersRunner.ts");
  10279. const DeadCodeInjectionCustomNode_1 = __webpack_require__(/*! ../../enums/custom-nodes/DeadCodeInjectionCustomNode */ "./src/enums/custom-nodes/DeadCodeInjectionCustomNode.ts");
  10280. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  10281. const NodeType_1 = __webpack_require__(/*! ../../enums/node/NodeType */ "./src/enums/node/NodeType.ts");
  10282. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  10283. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  10284. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  10285. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  10286. const NodeStatementUtils_1 = __webpack_require__(/*! ../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  10287. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  10288. let DeadCodeInjectionTransformer = DeadCodeInjectionTransformer_1 = class DeadCodeInjectionTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  10289. constructor(deadCodeInjectionCustomNodeFactory, transformersRunner, randomGenerator, options) {
  10290. super(randomGenerator, options);
  10291. this.deadCodeInjectionRootAstHostNodeSet = new Set();
  10292. this.collectedBlockStatements = [];
  10293. this.collectedBlockStatementsTotalLength = 0;
  10294. this.deadCodeInjectionCustomNodeFactory = deadCodeInjectionCustomNodeFactory;
  10295. this.transformersRunner = transformersRunner;
  10296. }
  10297. static isProhibitedNodeInsideCollectedBlockStatement(targetNode) {
  10298. return NodeGuards_1.NodeGuards.isFunctionDeclarationNode(targetNode)
  10299. || NodeGuards_1.NodeGuards.isBreakStatementNode(targetNode)
  10300. || NodeGuards_1.NodeGuards.isContinueStatementNode(targetNode)
  10301. || NodeGuards_1.NodeGuards.isAwaitExpressionNode(targetNode)
  10302. || NodeGuards_1.NodeGuards.isYieldExpressionNode(targetNode)
  10303. || NodeGuards_1.NodeGuards.isSuperNode(targetNode)
  10304. || (NodeGuards_1.NodeGuards.isForOfStatementNode(targetNode) && targetNode.await);
  10305. }
  10306. static isScopeHoistingFunctionDeclaration(targetNode) {
  10307. if (!NodeGuards_1.NodeGuards.isFunctionDeclarationNode(targetNode)) {
  10308. return false;
  10309. }
  10310. const scopeNode = NodeStatementUtils_1.NodeStatementUtils.getScopeOfNode(targetNode);
  10311. const scopeBody = !NodeGuards_1.NodeGuards.isSwitchCaseNode(scopeNode)
  10312. ? scopeNode.body
  10313. : scopeNode.consequent;
  10314. const indexInScope = scopeBody.indexOf(targetNode);
  10315. if (indexInScope === 0) {
  10316. return false;
  10317. }
  10318. const slicedBody = scopeBody.slice(0, indexInScope);
  10319. const hostBlockStatementNode = NodeFactory_1.NodeFactory.blockStatementNode(slicedBody);
  10320. const functionDeclarationName = targetNode.id.name;
  10321. let isScopeHoistedFunctionDeclaration = false;
  10322. estraverse.traverse(hostBlockStatementNode, {
  10323. enter: (node) => {
  10324. if (NodeGuards_1.NodeGuards.isIdentifierNode(node) && node.name === functionDeclarationName) {
  10325. isScopeHoistedFunctionDeclaration = true;
  10326. return estraverse.VisitorOption.Break;
  10327. }
  10328. }
  10329. });
  10330. return isScopeHoistedFunctionDeclaration;
  10331. }
  10332. static isValidCollectedBlockStatementNode(blockStatementNode) {
  10333. if (!blockStatementNode.body.length) {
  10334. return false;
  10335. }
  10336. let nestedBlockStatementsCount = 0;
  10337. let isValidBlockStatementNode = true;
  10338. estraverse.traverse(blockStatementNode, {
  10339. enter: (node) => {
  10340. if (NodeGuards_1.NodeGuards.isBlockStatementNode(node)) {
  10341. nestedBlockStatementsCount++;
  10342. }
  10343. if (nestedBlockStatementsCount > DeadCodeInjectionTransformer_1.maxNestedBlockStatementsCount
  10344. || DeadCodeInjectionTransformer_1.isProhibitedNodeInsideCollectedBlockStatement(node)
  10345. || DeadCodeInjectionTransformer_1.isScopeHoistingFunctionDeclaration(node)) {
  10346. isValidBlockStatementNode = false;
  10347. return estraverse.VisitorOption.Break;
  10348. }
  10349. }
  10350. });
  10351. return isValidBlockStatementNode;
  10352. }
  10353. static isValidWrappedBlockStatementNode(blockStatementNode) {
  10354. if (!blockStatementNode.body.length) {
  10355. return false;
  10356. }
  10357. let isValidBlockStatementNode = true;
  10358. estraverse.traverse(blockStatementNode, {
  10359. enter: (node) => {
  10360. if (DeadCodeInjectionTransformer_1.isScopeHoistingFunctionDeclaration(node)) {
  10361. isValidBlockStatementNode = false;
  10362. return estraverse.VisitorOption.Break;
  10363. }
  10364. }
  10365. });
  10366. if (!isValidBlockStatementNode) {
  10367. return false;
  10368. }
  10369. const parentNodeWithStatements = NodeStatementUtils_1.NodeStatementUtils
  10370. .getParentNodeWithStatements(blockStatementNode);
  10371. return parentNodeWithStatements.type !== NodeType_1.NodeType.Program;
  10372. }
  10373. getVisitor(nodeTransformationStage) {
  10374. switch (nodeTransformationStage) {
  10375. case NodeTransformationStage_1.NodeTransformationStage.DeadCodeInjection:
  10376. return {
  10377. enter: (node, parentNode) => {
  10378. if (parentNode && NodeGuards_1.NodeGuards.isProgramNode(node)) {
  10379. this.prepareNode(node, parentNode);
  10380. return node;
  10381. }
  10382. },
  10383. leave: (node, parentNode) => {
  10384. if (parentNode && NodeGuards_1.NodeGuards.isBlockStatementNode(node)) {
  10385. return this.transformNode(node, parentNode);
  10386. }
  10387. }
  10388. };
  10389. case NodeTransformationStage_1.NodeTransformationStage.Finalizing:
  10390. if (!this.deadCodeInjectionRootAstHostNodeSet.size) {
  10391. return null;
  10392. }
  10393. return {
  10394. enter: (node, parentNode) => {
  10395. if (parentNode && this.isDeadCodeInjectionRootAstHostNode(node)) {
  10396. return this.restoreNode(node, parentNode);
  10397. }
  10398. }
  10399. };
  10400. default:
  10401. return null;
  10402. }
  10403. }
  10404. prepareNode(programNode, parentNode) {
  10405. estraverse.traverse(programNode, {
  10406. enter: (node) => {
  10407. if (!NodeGuards_1.NodeGuards.isBlockStatementNode(node)) {
  10408. return;
  10409. }
  10410. const clonedBlockStatementNode = NodeUtils_1.NodeUtils.clone(node);
  10411. if (!DeadCodeInjectionTransformer_1.isValidCollectedBlockStatementNode(clonedBlockStatementNode)) {
  10412. return;
  10413. }
  10414. const transformedBlockStatementNode = this.makeClonedBlockStatementNodeUnique(clonedBlockStatementNode);
  10415. this.collectedBlockStatements.push(transformedBlockStatementNode);
  10416. }
  10417. });
  10418. this.collectedBlockStatementsTotalLength = this.collectedBlockStatements.length;
  10419. }
  10420. transformNode(blockStatementNode, parentNode) {
  10421. const canBreakTraverse = !this.collectedBlockStatements.length
  10422. || this.collectedBlockStatementsTotalLength < DeadCodeInjectionTransformer_1.minCollectedBlockStatementsCount;
  10423. if (canBreakTraverse) {
  10424. return estraverse.VisitorOption.Break;
  10425. }
  10426. if (this.randomGenerator.getMathRandom() > this.options.deadCodeInjectionThreshold
  10427. || !DeadCodeInjectionTransformer_1.isValidWrappedBlockStatementNode(blockStatementNode)) {
  10428. return blockStatementNode;
  10429. }
  10430. const minInteger = 0;
  10431. const maxInteger = this.collectedBlockStatements.length - 1;
  10432. const randomIndex = this.randomGenerator.getRandomInteger(minInteger, maxInteger);
  10433. const randomBlockStatementNode = this.collectedBlockStatements.splice(randomIndex, 1)[0];
  10434. const isDuplicateBlockStatementNodes = randomBlockStatementNode === blockStatementNode;
  10435. if (isDuplicateBlockStatementNodes) {
  10436. return blockStatementNode;
  10437. }
  10438. return this.replaceBlockStatementNode(blockStatementNode, randomBlockStatementNode, parentNode);
  10439. }
  10440. restoreNode(deadCodeInjectionRootAstHostNode, parentNode) {
  10441. const hostNodeFirstStatement = deadCodeInjectionRootAstHostNode.body[0];
  10442. if (!NodeGuards_1.NodeGuards.isFunctionDeclarationNode(hostNodeFirstStatement)) {
  10443. throw new Error('Wrong dead code injection root AST host node. Host node should contain `FunctionDeclaration` node');
  10444. }
  10445. return hostNodeFirstStatement.body;
  10446. }
  10447. isDeadCodeInjectionRootAstHostNode(node) {
  10448. return NodeGuards_1.NodeGuards.isBlockStatementNode(node) && this.deadCodeInjectionRootAstHostNodeSet.has(node);
  10449. }
  10450. makeClonedBlockStatementNodeUnique(clonedBlockStatementNode) {
  10451. const hostNode = NodeFactory_1.NodeFactory.programNode([
  10452. NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.functionExpressionNode([], clonedBlockStatementNode))
  10453. ]);
  10454. NodeUtils_1.NodeUtils.parentizeAst(hostNode);
  10455. NodeUtils_1.NodeUtils.parentizeNode(hostNode, hostNode);
  10456. this.transformersRunner.transform(hostNode, DeadCodeInjectionTransformer_1.transformersToRenameBlockScopeIdentifiers, NodeTransformationStage_1.NodeTransformationStage.RenameIdentifiers);
  10457. return clonedBlockStatementNode;
  10458. }
  10459. replaceBlockStatementNode(blockStatementNode, randomBlockStatementNode, parentNode) {
  10460. const deadCodeInjectionRootAstHostNode = NodeFactory_1.NodeFactory.blockStatementNode([
  10461. NodeFactory_1.NodeFactory.functionDeclarationNode(DeadCodeInjectionTransformer_1.deadCodeInjectionRootAstHostNodeName, [], randomBlockStatementNode)
  10462. ]);
  10463. this.deadCodeInjectionRootAstHostNodeSet.add(deadCodeInjectionRootAstHostNode);
  10464. const blockStatementDeadCodeInjectionCustomNode = this.deadCodeInjectionCustomNodeFactory(DeadCodeInjectionCustomNode_1.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);
  10465. blockStatementDeadCodeInjectionCustomNode.initialize(blockStatementNode, deadCodeInjectionRootAstHostNode);
  10466. const newBlockStatementNode = blockStatementDeadCodeInjectionCustomNode.getNode()[0];
  10467. NodeUtils_1.NodeUtils.parentizeNode(newBlockStatementNode, parentNode);
  10468. return newBlockStatementNode;
  10469. }
  10470. };
  10471. DeadCodeInjectionTransformer.deadCodeInjectionRootAstHostNodeName = 'deadCodeInjectionRootAstHostNode';
  10472. DeadCodeInjectionTransformer.maxNestedBlockStatementsCount = 4;
  10473. DeadCodeInjectionTransformer.minCollectedBlockStatementsCount = 5;
  10474. DeadCodeInjectionTransformer.transformersToRenameBlockScopeIdentifiers = [
  10475. NodeTransformer_1.NodeTransformer.LabeledStatementTransformer,
  10476. NodeTransformer_1.NodeTransformer.ScopeIdentifiersTransformer,
  10477. NodeTransformer_1.NodeTransformer.ScopeThroughIdentifiersTransformer
  10478. ];
  10479. DeadCodeInjectionTransformer = DeadCodeInjectionTransformer_1 = __decorate([
  10480. inversify_1.injectable(),
  10481. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),
  10482. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.INodeTransformersRunner)),
  10483. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  10484. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  10485. __metadata("design:paramtypes", [typeof (_a = typeof TDeadNodeInjectionCustomNodeFactory_1.TDeadNodeInjectionCustomNodeFactory !== "undefined" && TDeadNodeInjectionCustomNodeFactory_1.TDeadNodeInjectionCustomNodeFactory) === "function" ? _a : Object, typeof (_b = typeof INodeTransformersRunner_1.INodeTransformersRunner !== "undefined" && INodeTransformersRunner_1.INodeTransformersRunner) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object])
  10486. ], DeadCodeInjectionTransformer);
  10487. exports.DeadCodeInjectionTransformer = DeadCodeInjectionTransformer;
  10488. /***/ }),
  10489. /***/ "./src/node-transformers/finalizing-transformers/EscapeSequenceTransformer.ts":
  10490. /*!************************************************************************************!*\
  10491. !*** ./src/node-transformers/finalizing-transformers/EscapeSequenceTransformer.ts ***!
  10492. \************************************************************************************/
  10493. /*! unknown exports (runtime-defined) */
  10494. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  10495. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  10496. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  10497. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  10498. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  10499. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  10500. return c > 3 && r && Object.defineProperty(target, key, r), r;
  10501. };
  10502. var __metadata = (this && this.__metadata) || function (k, v) {
  10503. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  10504. };
  10505. var __param = (this && this.__param) || function (paramIndex, decorator) {
  10506. return function (target, key) { decorator(target, key, paramIndex); }
  10507. };
  10508. var _a, _b, _c;
  10509. Object.defineProperty(exports, "__esModule", ({ value: true }));
  10510. exports.EscapeSequenceTransformer = void 0;
  10511. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  10512. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  10513. const IEscapeSequenceEncoder_1 = __webpack_require__(/*! ../../interfaces/utils/IEscapeSequenceEncoder */ "./src/interfaces/utils/IEscapeSequenceEncoder.ts");
  10514. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  10515. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  10516. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  10517. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  10518. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  10519. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  10520. const NodeLiteralUtils_1 = __webpack_require__(/*! ../../node/NodeLiteralUtils */ "./src/node/NodeLiteralUtils.ts");
  10521. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  10522. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  10523. let EscapeSequenceTransformer = class EscapeSequenceTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  10524. constructor(randomGenerator, options, escapeSequenceEncoder) {
  10525. super(randomGenerator, options);
  10526. this.runAfter = [
  10527. NodeTransformer_1.NodeTransformer.CustomCodeHelpersTransformer
  10528. ];
  10529. this.escapeSequenceEncoder = escapeSequenceEncoder;
  10530. }
  10531. getVisitor(nodeTransformationStage) {
  10532. switch (nodeTransformationStage) {
  10533. case NodeTransformationStage_1.NodeTransformationStage.Finalizing:
  10534. return {
  10535. enter: (node, parentNode) => {
  10536. if (NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  10537. return this.transformNode(node, parentNode);
  10538. }
  10539. }
  10540. };
  10541. default:
  10542. return null;
  10543. }
  10544. }
  10545. transformNode(literalNode, parentNode) {
  10546. if (!NodeLiteralUtils_1.NodeLiteralUtils.isStringLiteralNode(literalNode)) {
  10547. return literalNode;
  10548. }
  10549. const encodedValue = this.escapeSequenceEncoder.encode(literalNode.value, this.options.unicodeEscapeSequence);
  10550. const newLiteralNode = NodeFactory_1.NodeFactory.literalNode(encodedValue);
  10551. NodeUtils_1.NodeUtils.parentizeNode(newLiteralNode, parentNode);
  10552. return newLiteralNode;
  10553. }
  10554. };
  10555. EscapeSequenceTransformer = __decorate([
  10556. inversify_1.injectable(),
  10557. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  10558. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  10559. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IEscapeSequenceEncoder)),
  10560. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object, typeof (_c = typeof IEscapeSequenceEncoder_1.IEscapeSequenceEncoder !== "undefined" && IEscapeSequenceEncoder_1.IEscapeSequenceEncoder) === "function" ? _c : Object])
  10561. ], EscapeSequenceTransformer);
  10562. exports.EscapeSequenceTransformer = EscapeSequenceTransformer;
  10563. /***/ }),
  10564. /***/ "./src/node-transformers/initializing-transformers/CommentsTransformer.ts":
  10565. /*!********************************************************************************!*\
  10566. !*** ./src/node-transformers/initializing-transformers/CommentsTransformer.ts ***!
  10567. \********************************************************************************/
  10568. /*! unknown exports (runtime-defined) */
  10569. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  10570. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  10571. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  10572. if (k2 === undefined) k2 = k;
  10573. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  10574. }) : (function(o, m, k, k2) {
  10575. if (k2 === undefined) k2 = k;
  10576. o[k2] = m[k];
  10577. }));
  10578. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  10579. Object.defineProperty(o, "default", { enumerable: true, value: v });
  10580. }) : function(o, v) {
  10581. o["default"] = v;
  10582. });
  10583. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  10584. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  10585. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  10586. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  10587. return c > 3 && r && Object.defineProperty(target, key, r), r;
  10588. };
  10589. var __importStar = (this && this.__importStar) || function (mod) {
  10590. if (mod && mod.__esModule) return mod;
  10591. var result = {};
  10592. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  10593. __setModuleDefault(result, mod);
  10594. return result;
  10595. };
  10596. var __metadata = (this && this.__metadata) || function (k, v) {
  10597. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  10598. };
  10599. var __param = (this && this.__param) || function (paramIndex, decorator) {
  10600. return function (target, key) { decorator(target, key, paramIndex); }
  10601. };
  10602. var CommentsTransformer_1, _a, _b;
  10603. Object.defineProperty(exports, "__esModule", ({ value: true }));
  10604. exports.CommentsTransformer = void 0;
  10605. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  10606. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  10607. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  10608. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  10609. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  10610. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  10611. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  10612. const ConditionalCommentObfuscatingGuard_1 = __webpack_require__(/*! ../preparing-transformers/obfuscating-guards/ConditionalCommentObfuscatingGuard */ "./src/node-transformers/preparing-transformers/obfuscating-guards/ConditionalCommentObfuscatingGuard.ts");
  10613. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  10614. let CommentsTransformer = CommentsTransformer_1 = class CommentsTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  10615. constructor(randomGenerator, options) {
  10616. super(randomGenerator, options);
  10617. }
  10618. getVisitor(nodeTransformationStage) {
  10619. switch (nodeTransformationStage) {
  10620. case NodeTransformationStage_1.NodeTransformationStage.Initializing:
  10621. return {
  10622. leave: (node) => {
  10623. if (NodeGuards_1.NodeGuards.isProgramNode(node)) {
  10624. return this.transformNode(node);
  10625. }
  10626. }
  10627. };
  10628. case NodeTransformationStage_1.NodeTransformationStage.Finalizing:
  10629. return {
  10630. leave: (node) => {
  10631. if (NodeGuards_1.NodeGuards.isProgramNode(node)) {
  10632. return this.filterCommentsOnFinalizingTraverse(node);
  10633. }
  10634. }
  10635. };
  10636. default:
  10637. return null;
  10638. }
  10639. }
  10640. transformNode(rootNode) {
  10641. rootNode = this.filterCommentsOnPrimaryTraverse(rootNode);
  10642. if (!rootNode.comments || !rootNode.comments.length) {
  10643. return rootNode;
  10644. }
  10645. const comments = rootNode.comments.reverse();
  10646. if (comments.length === 0) {
  10647. return rootNode;
  10648. }
  10649. if (!rootNode.body.length) {
  10650. rootNode.leadingComments = comments;
  10651. return rootNode;
  10652. }
  10653. let isFirstNode = true;
  10654. estraverse.traverse(rootNode, {
  10655. enter: (node) => {
  10656. if (node === rootNode) {
  10657. return;
  10658. }
  10659. const commentIdx = comments.findIndex((comment) => comment.range && node.range && comment.range[0] < node.range[0]);
  10660. if (commentIdx >= 0) {
  10661. (isFirstNode ? rootNode : node).leadingComments =
  10662. comments.splice(commentIdx, comments.length - commentIdx).reverse();
  10663. }
  10664. isFirstNode = false;
  10665. }
  10666. });
  10667. if (comments.length > 0) {
  10668. rootNode.trailingComments = comments.reverse();
  10669. }
  10670. return rootNode;
  10671. }
  10672. filterCommentsOnPrimaryTraverse(rootNode) {
  10673. var _a;
  10674. rootNode.comments = (_a = rootNode.comments) === null || _a === void 0 ? void 0 : _a.filter((comment) => this.filterComment(comment, true));
  10675. return rootNode;
  10676. }
  10677. filterCommentsOnFinalizingTraverse(rootNode) {
  10678. estraverse.replace(rootNode, {
  10679. enter: (node) => {
  10680. var _a, _b;
  10681. if (node.leadingComments) {
  10682. node.leadingComments = (_a = node.leadingComments) === null || _a === void 0 ? void 0 : _a.filter((comment) => this.filterComment(comment, false));
  10683. }
  10684. if (node.trailingComments) {
  10685. node.trailingComments = (_b = node.trailingComments) === null || _b === void 0 ? void 0 : _b.filter((comment) => this.filterComment(comment, false));
  10686. }
  10687. return node;
  10688. }
  10689. });
  10690. return rootNode;
  10691. }
  10692. filterComment(comment, keepConditionalComment) {
  10693. if (keepConditionalComment && ConditionalCommentObfuscatingGuard_1.ConditionalCommentObfuscatingGuard.isConditionalComment(comment)) {
  10694. return true;
  10695. }
  10696. return CommentsTransformer_1.preservedWords
  10697. .some((preservedWord) => comment.value.includes(preservedWord));
  10698. }
  10699. };
  10700. CommentsTransformer.preservedWords = [
  10701. '@license',
  10702. '@preserve'
  10703. ];
  10704. CommentsTransformer = CommentsTransformer_1 = __decorate([
  10705. inversify_1.injectable(),
  10706. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  10707. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  10708. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  10709. ], CommentsTransformer);
  10710. exports.CommentsTransformer = CommentsTransformer;
  10711. /***/ }),
  10712. /***/ "./src/node-transformers/preparing-transformers/CustomCodeHelpersTransformer.ts":
  10713. /*!**************************************************************************************!*\
  10714. !*** ./src/node-transformers/preparing-transformers/CustomCodeHelpersTransformer.ts ***!
  10715. \**************************************************************************************/
  10716. /*! unknown exports (runtime-defined) */
  10717. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  10718. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  10719. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  10720. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  10721. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  10722. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  10723. return c > 3 && r && Object.defineProperty(target, key, r), r;
  10724. };
  10725. var __metadata = (this && this.__metadata) || function (k, v) {
  10726. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  10727. };
  10728. var __param = (this && this.__param) || function (paramIndex, decorator) {
  10729. return function (target, key) { decorator(target, key, paramIndex); }
  10730. };
  10731. var _a, _b, _c, _d, _e, _f;
  10732. Object.defineProperty(exports, "__esModule", ({ value: true }));
  10733. exports.CustomCodeHelpersTransformer = void 0;
  10734. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  10735. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  10736. const TCustomCodeHelperGroupStorage_1 = __webpack_require__(/*! ../../types/storages/TCustomCodeHelperGroupStorage */ "./src/types/storages/TCustomCodeHelperGroupStorage.ts");
  10737. const IObfuscationEventEmitter_1 = __webpack_require__(/*! ../../interfaces/event-emitters/IObfuscationEventEmitter */ "./src/interfaces/event-emitters/IObfuscationEventEmitter.ts");
  10738. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  10739. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  10740. const ICallsGraphAnalyzer_1 = __webpack_require__(/*! ../../interfaces/analyzers/calls-graph-analyzer/ICallsGraphAnalyzer */ "./src/interfaces/analyzers/calls-graph-analyzer/ICallsGraphAnalyzer.ts");
  10741. const IPrevailingKindOfVariablesAnalyzer_1 = __webpack_require__(/*! ../../interfaces/analyzers/calls-graph-analyzer/IPrevailingKindOfVariablesAnalyzer */ "./src/interfaces/analyzers/calls-graph-analyzer/IPrevailingKindOfVariablesAnalyzer.ts");
  10742. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  10743. const ObfuscationEvent_1 = __webpack_require__(/*! ../../enums/event-emitters/ObfuscationEvent */ "./src/enums/event-emitters/ObfuscationEvent.ts");
  10744. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  10745. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  10746. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  10747. let CustomCodeHelpersTransformer = class CustomCodeHelpersTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  10748. constructor(callsGraphAnalyzer, prevailingKindOfVariablesAnalyzer, obfuscationEventEmitter, customCodeHelperGroupStorage, randomGenerator, options) {
  10749. super(randomGenerator, options);
  10750. this.runAfter = [
  10751. NodeTransformer_1.NodeTransformer.ParentificationTransformer,
  10752. NodeTransformer_1.NodeTransformer.VariablePreserveTransformer
  10753. ];
  10754. this.callsGraphData = [];
  10755. this.callsGraphAnalyzer = callsGraphAnalyzer;
  10756. this.prevailingKindOfVariablesAnalyzer = prevailingKindOfVariablesAnalyzer;
  10757. this.obfuscationEventEmitter = obfuscationEventEmitter;
  10758. this.customCodeHelperGroupStorage = customCodeHelperGroupStorage;
  10759. }
  10760. getVisitor(nodeTransformationStage) {
  10761. switch (nodeTransformationStage) {
  10762. case NodeTransformationStage_1.NodeTransformationStage.Preparing:
  10763. return {
  10764. leave: (node, parentNode) => {
  10765. if (NodeGuards_1.NodeGuards.isProgramNode(node)) {
  10766. this.prepareNode(node, parentNode);
  10767. this.appendCustomNodesBeforeObfuscation(node, parentNode);
  10768. return this.transformNode(node, parentNode);
  10769. }
  10770. }
  10771. };
  10772. case NodeTransformationStage_1.NodeTransformationStage.Finalizing:
  10773. return {
  10774. leave: (node, parentNode) => {
  10775. if (NodeGuards_1.NodeGuards.isProgramNode(node)) {
  10776. this.appendCustomNodesAfterObfuscation(node, parentNode);
  10777. }
  10778. }
  10779. };
  10780. default:
  10781. return null;
  10782. }
  10783. }
  10784. prepareNode(node, parentNode) {
  10785. this.callsGraphData = this.callsGraphAnalyzer.analyze(node);
  10786. this.prevailingKindOfVariablesAnalyzer.analyze(node);
  10787. }
  10788. transformNode(node, parentNode) {
  10789. return node;
  10790. }
  10791. appendCustomNodesBeforeObfuscation(node, parentNode) {
  10792. this.customCodeHelperGroupStorage
  10793. .getStorage()
  10794. .forEach((customCodeHelperGroup) => {
  10795. customCodeHelperGroup.initialize();
  10796. this.obfuscationEventEmitter.once(customCodeHelperGroup.getAppendEvent(), customCodeHelperGroup.appendNodes.bind(customCodeHelperGroup));
  10797. });
  10798. this.obfuscationEventEmitter.emit(ObfuscationEvent_1.ObfuscationEvent.BeforeObfuscation, node, this.callsGraphData);
  10799. }
  10800. appendCustomNodesAfterObfuscation(node, parentNode) {
  10801. this.obfuscationEventEmitter.emit(ObfuscationEvent_1.ObfuscationEvent.AfterObfuscation, node, this.callsGraphData);
  10802. }
  10803. };
  10804. CustomCodeHelpersTransformer = __decorate([
  10805. inversify_1.injectable(),
  10806. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICallsGraphAnalyzer)),
  10807. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),
  10808. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IObfuscationEventEmitter)),
  10809. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.TCustomNodeGroupStorage)),
  10810. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  10811. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  10812. __metadata("design:paramtypes", [typeof (_a = typeof ICallsGraphAnalyzer_1.ICallsGraphAnalyzer !== "undefined" && ICallsGraphAnalyzer_1.ICallsGraphAnalyzer) === "function" ? _a : Object, typeof (_b = typeof IPrevailingKindOfVariablesAnalyzer_1.IPrevailingKindOfVariablesAnalyzer !== "undefined" && IPrevailingKindOfVariablesAnalyzer_1.IPrevailingKindOfVariablesAnalyzer) === "function" ? _b : Object, typeof (_c = typeof IObfuscationEventEmitter_1.IObfuscationEventEmitter !== "undefined" && IObfuscationEventEmitter_1.IObfuscationEventEmitter) === "function" ? _c : Object, typeof (_d = typeof TCustomCodeHelperGroupStorage_1.TCustomCodeHelperGroupStorage !== "undefined" && TCustomCodeHelperGroupStorage_1.TCustomCodeHelperGroupStorage) === "function" ? _d : Object, typeof (_e = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _e : Object, typeof (_f = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _f : Object])
  10813. ], CustomCodeHelpersTransformer);
  10814. exports.CustomCodeHelpersTransformer = CustomCodeHelpersTransformer;
  10815. /***/ }),
  10816. /***/ "./src/node-transformers/preparing-transformers/EvalCallExpressionTransformer.ts":
  10817. /*!***************************************************************************************!*\
  10818. !*** ./src/node-transformers/preparing-transformers/EvalCallExpressionTransformer.ts ***!
  10819. \***************************************************************************************/
  10820. /*! unknown exports (runtime-defined) */
  10821. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  10822. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  10823. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  10824. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  10825. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  10826. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  10827. return c > 3 && r && Object.defineProperty(target, key, r), r;
  10828. };
  10829. var __metadata = (this && this.__metadata) || function (k, v) {
  10830. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  10831. };
  10832. var __param = (this && this.__param) || function (paramIndex, decorator) {
  10833. return function (target, key) { decorator(target, key, paramIndex); }
  10834. };
  10835. var EvalCallExpressionTransformer_1, _a, _b;
  10836. Object.defineProperty(exports, "__esModule", ({ value: true }));
  10837. exports.EvalCallExpressionTransformer = void 0;
  10838. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  10839. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  10840. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  10841. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  10842. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  10843. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  10844. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  10845. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  10846. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  10847. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  10848. const StringUtils_1 = __webpack_require__(/*! ../../utils/StringUtils */ "./src/utils/StringUtils.ts");
  10849. let EvalCallExpressionTransformer = EvalCallExpressionTransformer_1 = class EvalCallExpressionTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  10850. constructor(randomGenerator, options) {
  10851. super(randomGenerator, options);
  10852. this.runAfter = [
  10853. NodeTransformer_1.NodeTransformer.EscapeSequenceTransformer,
  10854. NodeTransformer_1.NodeTransformer.ParentificationTransformer,
  10855. NodeTransformer_1.NodeTransformer.VariablePreserveTransformer
  10856. ];
  10857. this.evalRootAstHostNodeSet = new Set();
  10858. }
  10859. static extractEvalStringFromCallExpressionArgument(node) {
  10860. if (NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  10861. return EvalCallExpressionTransformer_1
  10862. .extractEvalStringFromLiteralNode(node);
  10863. }
  10864. if (NodeGuards_1.NodeGuards.isTemplateLiteralNode(node)) {
  10865. return EvalCallExpressionTransformer_1
  10866. .extractEvalStringFromTemplateLiteralNode(node);
  10867. }
  10868. return null;
  10869. }
  10870. static extractEvalStringFromLiteralNode(node) {
  10871. return typeof node.value === 'string' ? node.value : null;
  10872. }
  10873. static extractEvalStringFromTemplateLiteralNode(node) {
  10874. const quasis = node.quasis;
  10875. const allowedQuasisLength = 1;
  10876. if (quasis.length !== allowedQuasisLength || node.expressions.length) {
  10877. return null;
  10878. }
  10879. return quasis[0].value.cooked;
  10880. }
  10881. getVisitor(nodeTransformationStage) {
  10882. switch (nodeTransformationStage) {
  10883. case NodeTransformationStage_1.NodeTransformationStage.Preparing:
  10884. return {
  10885. enter: (node, parentNode) => {
  10886. if (parentNode
  10887. && NodeGuards_1.NodeGuards.isCallExpressionNode(node)
  10888. && NodeGuards_1.NodeGuards.isIdentifierNode(node.callee)
  10889. && node.callee.name === 'eval') {
  10890. return this.transformNode(node, parentNode);
  10891. }
  10892. }
  10893. };
  10894. case NodeTransformationStage_1.NodeTransformationStage.Finalizing:
  10895. if (!this.evalRootAstHostNodeSet.size) {
  10896. return null;
  10897. }
  10898. return {
  10899. leave: (node, parentNode) => {
  10900. if (parentNode && this.isEvalRootAstHostNode(node)) {
  10901. return this.restoreNode(node, parentNode);
  10902. }
  10903. }
  10904. };
  10905. default:
  10906. return null;
  10907. }
  10908. }
  10909. transformNode(callExpressionNode, parentNode) {
  10910. const callExpressionFirstArgument = callExpressionNode.arguments[0];
  10911. if (!callExpressionFirstArgument) {
  10912. return callExpressionNode;
  10913. }
  10914. const evalString = EvalCallExpressionTransformer_1
  10915. .extractEvalStringFromCallExpressionArgument(callExpressionFirstArgument);
  10916. if (!evalString) {
  10917. return callExpressionNode;
  10918. }
  10919. let ast;
  10920. try {
  10921. ast = NodeUtils_1.NodeUtils.convertCodeToStructure(evalString);
  10922. }
  10923. catch (_a) {
  10924. return callExpressionNode;
  10925. }
  10926. const evalRootAstHostNode = NodeFactory_1.NodeFactory
  10927. .functionExpressionNode([], NodeFactory_1.NodeFactory.blockStatementNode(ast));
  10928. NodeUtils_1.NodeUtils.parentizeAst(evalRootAstHostNode);
  10929. NodeUtils_1.NodeUtils.parentizeNode(evalRootAstHostNode, parentNode);
  10930. this.evalRootAstHostNodeSet.add(evalRootAstHostNode);
  10931. return evalRootAstHostNode;
  10932. }
  10933. restoreNode(evalRootAstHostNode, parentNode) {
  10934. const targetAst = evalRootAstHostNode.body.body;
  10935. const obfuscatedCode = NodeUtils_1.NodeUtils.convertStructureToCode(targetAst);
  10936. return NodeFactory_1.NodeFactory.callExpressionNode(NodeFactory_1.NodeFactory.identifierNode('eval'), [
  10937. NodeFactory_1.NodeFactory.literalNode(StringUtils_1.StringUtils.escapeJsString(obfuscatedCode))
  10938. ]);
  10939. }
  10940. isEvalRootAstHostNode(node) {
  10941. return NodeGuards_1.NodeGuards.isFunctionExpressionNode(node) && this.evalRootAstHostNodeSet.has(node);
  10942. }
  10943. };
  10944. EvalCallExpressionTransformer = EvalCallExpressionTransformer_1 = __decorate([
  10945. inversify_1.injectable(),
  10946. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  10947. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  10948. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  10949. ], EvalCallExpressionTransformer);
  10950. exports.EvalCallExpressionTransformer = EvalCallExpressionTransformer;
  10951. /***/ }),
  10952. /***/ "./src/node-transformers/preparing-transformers/MetadataTransformer.ts":
  10953. /*!*****************************************************************************!*\
  10954. !*** ./src/node-transformers/preparing-transformers/MetadataTransformer.ts ***!
  10955. \*****************************************************************************/
  10956. /*! unknown exports (runtime-defined) */
  10957. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  10958. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  10959. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  10960. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  10961. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  10962. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  10963. return c > 3 && r && Object.defineProperty(target, key, r), r;
  10964. };
  10965. var __metadata = (this && this.__metadata) || function (k, v) {
  10966. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  10967. };
  10968. var __param = (this && this.__param) || function (paramIndex, decorator) {
  10969. return function (target, key) { decorator(target, key, paramIndex); }
  10970. };
  10971. var _a, _b;
  10972. Object.defineProperty(exports, "__esModule", ({ value: true }));
  10973. exports.MetadataTransformer = void 0;
  10974. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  10975. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  10976. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  10977. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  10978. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  10979. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  10980. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  10981. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  10982. const NodeMetadata_1 = __webpack_require__(/*! ../../node/NodeMetadata */ "./src/node/NodeMetadata.ts");
  10983. let MetadataTransformer = class MetadataTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  10984. constructor(randomGenerator, options) {
  10985. super(randomGenerator, options);
  10986. this.runAfter = [
  10987. NodeTransformer_1.NodeTransformer.ParentificationTransformer,
  10988. NodeTransformer_1.NodeTransformer.VariablePreserveTransformer
  10989. ];
  10990. }
  10991. getVisitor(nodeTransformationStage) {
  10992. switch (nodeTransformationStage) {
  10993. case NodeTransformationStage_1.NodeTransformationStage.Preparing:
  10994. return {
  10995. enter: (node, parentNode) => {
  10996. return this.transformNode(node, parentNode);
  10997. }
  10998. };
  10999. default:
  11000. return null;
  11001. }
  11002. }
  11003. transformNode(node, parentNode) {
  11004. NodeMetadata_1.NodeMetadata.set(node, { ignoredNode: false });
  11005. if (NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  11006. NodeMetadata_1.NodeMetadata.set(node, { replacedLiteral: false });
  11007. }
  11008. return node;
  11009. }
  11010. };
  11011. MetadataTransformer = __decorate([
  11012. inversify_1.injectable(),
  11013. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  11014. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11015. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  11016. ], MetadataTransformer);
  11017. exports.MetadataTransformer = MetadataTransformer;
  11018. /***/ }),
  11019. /***/ "./src/node-transformers/preparing-transformers/ObfuscatingGuardsTransformer.ts":
  11020. /*!**************************************************************************************!*\
  11021. !*** ./src/node-transformers/preparing-transformers/ObfuscatingGuardsTransformer.ts ***!
  11022. \**************************************************************************************/
  11023. /*! unknown exports (runtime-defined) */
  11024. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11025. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11026. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11027. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11028. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11029. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11030. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11031. };
  11032. var __metadata = (this && this.__metadata) || function (k, v) {
  11033. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11034. };
  11035. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11036. return function (target, key) { decorator(target, key, paramIndex); }
  11037. };
  11038. var ObfuscatingGuardsTransformer_1, _a, _b, _c;
  11039. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11040. exports.ObfuscatingGuardsTransformer = void 0;
  11041. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11042. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11043. const TObfuscatingGuardFactory_1 = __webpack_require__(/*! ../../types/container/node-transformers/TObfuscatingGuardFactory */ "./src/types/container/node-transformers/TObfuscatingGuardFactory.ts");
  11044. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11045. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  11046. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  11047. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  11048. const ObfuscatingGuard_1 = __webpack_require__(/*! ../../enums/node-transformers/preparing-transformers/obfuscating-guards/ObfuscatingGuard */ "./src/enums/node-transformers/preparing-transformers/obfuscating-guards/ObfuscatingGuard.ts");
  11049. const ObfuscatingGuardResult_1 = __webpack_require__(/*! ../../enums/node/ObfuscatingGuardResult */ "./src/enums/node/ObfuscatingGuardResult.ts");
  11050. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  11051. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11052. const NodeMetadata_1 = __webpack_require__(/*! ../../node/NodeMetadata */ "./src/node/NodeMetadata.ts");
  11053. let ObfuscatingGuardsTransformer = ObfuscatingGuardsTransformer_1 = class ObfuscatingGuardsTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  11054. constructor(obfuscatingGuardFactory, randomGenerator, options) {
  11055. super(randomGenerator, options);
  11056. this.runAfter = [
  11057. NodeTransformer_1.NodeTransformer.ParentificationTransformer,
  11058. NodeTransformer_1.NodeTransformer.VariablePreserveTransformer
  11059. ];
  11060. this.obfuscatingGuards = ObfuscatingGuardsTransformer_1.obfuscatingGuardsList.map(obfuscatingGuardFactory);
  11061. }
  11062. getVisitor(nodeTransformationStage) {
  11063. switch (nodeTransformationStage) {
  11064. case NodeTransformationStage_1.NodeTransformationStage.Preparing:
  11065. return {
  11066. enter: (node, parentNode) => {
  11067. return this.transformNode(node, parentNode);
  11068. }
  11069. };
  11070. default:
  11071. return null;
  11072. }
  11073. }
  11074. transformNode(node, parentNode) {
  11075. const obfuscatingGuardResults = this.obfuscatingGuards
  11076. .map((obfuscatingGuard) => obfuscatingGuard.check(node));
  11077. this.setNodeMetadata(node, obfuscatingGuardResults);
  11078. return node;
  11079. }
  11080. setNodeMetadata(node, obfuscatingGuardResults) {
  11081. const isTransformNode = obfuscatingGuardResults
  11082. .every((obfuscatingGuardResult) => obfuscatingGuardResult === ObfuscatingGuardResult_1.ObfuscatingGuardResult.Transform);
  11083. let isForceTransformNode = false;
  11084. let isIgnoredNode = false;
  11085. if (!isTransformNode) {
  11086. isForceTransformNode = obfuscatingGuardResults
  11087. .some((obfuscatingGuardResult) => obfuscatingGuardResult === ObfuscatingGuardResult_1.ObfuscatingGuardResult.ForceTransform);
  11088. isIgnoredNode = !isForceTransformNode && obfuscatingGuardResults
  11089. .some((obfuscatingGuardResult) => obfuscatingGuardResult === ObfuscatingGuardResult_1.ObfuscatingGuardResult.Ignore);
  11090. }
  11091. NodeMetadata_1.NodeMetadata.set(node, {
  11092. forceTransformNode: isForceTransformNode && !NodeGuards_1.NodeGuards.isProgramNode(node),
  11093. ignoredNode: isIgnoredNode && !NodeGuards_1.NodeGuards.isProgramNode(node)
  11094. });
  11095. }
  11096. };
  11097. ObfuscatingGuardsTransformer.obfuscatingGuardsList = [
  11098. ObfuscatingGuard_1.ObfuscatingGuard.BlackListObfuscatingGuard,
  11099. ObfuscatingGuard_1.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,
  11100. ObfuscatingGuard_1.ObfuscatingGuard.ForceTransformStringObfuscatingGuard,
  11101. ObfuscatingGuard_1.ObfuscatingGuard.IgnoredRequireImportObfuscatingGuard,
  11102. ObfuscatingGuard_1.ObfuscatingGuard.ReservedStringObfuscatingGuard
  11103. ];
  11104. ObfuscatingGuardsTransformer = ObfuscatingGuardsTransformer_1 = __decorate([
  11105. inversify_1.injectable(),
  11106. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__INodeGuard)),
  11107. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  11108. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11109. __metadata("design:paramtypes", [typeof (_a = typeof TObfuscatingGuardFactory_1.TObfuscatingGuardFactory !== "undefined" && TObfuscatingGuardFactory_1.TObfuscatingGuardFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  11110. ], ObfuscatingGuardsTransformer);
  11111. exports.ObfuscatingGuardsTransformer = ObfuscatingGuardsTransformer;
  11112. /***/ }),
  11113. /***/ "./src/node-transformers/preparing-transformers/ParentificationTransformer.ts":
  11114. /*!************************************************************************************!*\
  11115. !*** ./src/node-transformers/preparing-transformers/ParentificationTransformer.ts ***!
  11116. \************************************************************************************/
  11117. /*! unknown exports (runtime-defined) */
  11118. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11119. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11120. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11121. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11122. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11123. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11124. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11125. };
  11126. var __metadata = (this && this.__metadata) || function (k, v) {
  11127. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11128. };
  11129. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11130. return function (target, key) { decorator(target, key, paramIndex); }
  11131. };
  11132. var _a, _b;
  11133. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11134. exports.ParentificationTransformer = void 0;
  11135. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11136. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11137. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11138. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  11139. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  11140. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  11141. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  11142. let ParentificationTransformer = class ParentificationTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  11143. constructor(randomGenerator, options) {
  11144. super(randomGenerator, options);
  11145. }
  11146. getVisitor(nodeTransformationStage) {
  11147. switch (nodeTransformationStage) {
  11148. case NodeTransformationStage_1.NodeTransformationStage.Preparing:
  11149. return {
  11150. enter: (node, parentNode) => {
  11151. return this.transformNode(node, parentNode);
  11152. }
  11153. };
  11154. default:
  11155. return null;
  11156. }
  11157. }
  11158. transformNode(node, parentNode) {
  11159. return NodeUtils_1.NodeUtils.parentizeNode(node, parentNode);
  11160. }
  11161. };
  11162. ParentificationTransformer = __decorate([
  11163. inversify_1.injectable(),
  11164. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  11165. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11166. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  11167. ], ParentificationTransformer);
  11168. exports.ParentificationTransformer = ParentificationTransformer;
  11169. /***/ }),
  11170. /***/ "./src/node-transformers/preparing-transformers/VariablePreserveTransformer.ts":
  11171. /*!*************************************************************************************!*\
  11172. !*** ./src/node-transformers/preparing-transformers/VariablePreserveTransformer.ts ***!
  11173. \*************************************************************************************/
  11174. /*! unknown exports (runtime-defined) */
  11175. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11176. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11177. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11178. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11179. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11180. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11181. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11182. };
  11183. var __metadata = (this && this.__metadata) || function (k, v) {
  11184. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11185. };
  11186. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11187. return function (target, key) { decorator(target, key, paramIndex); }
  11188. };
  11189. var _a, _b, _c, _d;
  11190. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11191. exports.VariablePreserveTransformer = void 0;
  11192. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11193. const IIdentifierReplacer_1 = __webpack_require__(/*! ../../interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer */ "./src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer.ts");
  11194. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11195. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  11196. const IScopeIdentifiersTraverser_1 = __webpack_require__(/*! ../../interfaces/node/IScopeIdentifiersTraverser */ "./src/interfaces/node/IScopeIdentifiersTraverser.ts");
  11197. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  11198. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11199. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  11200. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  11201. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11202. let VariablePreserveTransformer = class VariablePreserveTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  11203. constructor(identifierReplacer, randomGenerator, options, scopeIdentifiersTraverser) {
  11204. super(randomGenerator, options);
  11205. this.runAfter = [
  11206. NodeTransformer_1.NodeTransformer.ParentificationTransformer
  11207. ];
  11208. this.identifierReplacer = identifierReplacer;
  11209. this.scopeIdentifiersTraverser = scopeIdentifiersTraverser;
  11210. this.preserveScopeVariableIdentifiers = this.preserveScopeVariableIdentifiers.bind(this);
  11211. }
  11212. getVisitor(nodeTransformationStage) {
  11213. switch (nodeTransformationStage) {
  11214. case NodeTransformationStage_1.NodeTransformationStage.Preparing:
  11215. case NodeTransformationStage_1.NodeTransformationStage.Converting:
  11216. case NodeTransformationStage_1.NodeTransformationStage.RenameIdentifiers:
  11217. return {
  11218. enter: (node, parentNode) => {
  11219. if (parentNode && NodeGuards_1.NodeGuards.isProgramNode(node)) {
  11220. return this.transformNode(node, parentNode);
  11221. }
  11222. }
  11223. };
  11224. default:
  11225. return null;
  11226. }
  11227. }
  11228. transformNode(programNode, parentNode) {
  11229. this.scopeIdentifiersTraverser.traverseScopeIdentifiers(programNode, parentNode, this.preserveScopeVariableIdentifiers);
  11230. return programNode;
  11231. }
  11232. preserveScopeVariableIdentifiers(data) {
  11233. const { isGlobalDeclaration, isBubblingDeclaration, variable, variableScope } = data;
  11234. for (const identifier of variable.identifiers) {
  11235. if (isGlobalDeclaration || isBubblingDeclaration) {
  11236. this.preserveIdentifierNameForRootLexicalScope(identifier);
  11237. }
  11238. else {
  11239. this.preserveIdentifierNameForLexicalScope(identifier, variableScope);
  11240. }
  11241. }
  11242. }
  11243. preserveIdentifierNameForRootLexicalScope(identifierNode) {
  11244. this.identifierReplacer.preserveName(identifierNode);
  11245. }
  11246. preserveIdentifierNameForLexicalScope(identifierNode, variableScope) {
  11247. const lexicalScopeNode = NodeGuards_1.NodeGuards.isNodeWithLexicalScope(variableScope.block)
  11248. ? variableScope.block
  11249. : null;
  11250. if (!lexicalScopeNode) {
  11251. return;
  11252. }
  11253. this.identifierReplacer.preserveNameForLexicalScope(identifierNode, lexicalScopeNode);
  11254. }
  11255. };
  11256. VariablePreserveTransformer = __decorate([
  11257. inversify_1.injectable(),
  11258. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierReplacer)),
  11259. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  11260. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11261. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IScopeIdentifiersTraverser)),
  11262. __metadata("design:paramtypes", [typeof (_a = typeof IIdentifierReplacer_1.IIdentifierReplacer !== "undefined" && IIdentifierReplacer_1.IIdentifierReplacer) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object, typeof (_d = typeof IScopeIdentifiersTraverser_1.IScopeIdentifiersTraverser !== "undefined" && IScopeIdentifiersTraverser_1.IScopeIdentifiersTraverser) === "function" ? _d : Object])
  11263. ], VariablePreserveTransformer);
  11264. exports.VariablePreserveTransformer = VariablePreserveTransformer;
  11265. /***/ }),
  11266. /***/ "./src/node-transformers/preparing-transformers/obfuscating-guards/BlackListObfuscatingGuard.ts":
  11267. /*!******************************************************************************************************!*\
  11268. !*** ./src/node-transformers/preparing-transformers/obfuscating-guards/BlackListObfuscatingGuard.ts ***!
  11269. \******************************************************************************************************/
  11270. /*! unknown exports (runtime-defined) */
  11271. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11272. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11273. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11274. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11275. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11276. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11277. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11278. };
  11279. var __metadata = (this && this.__metadata) || function (k, v) {
  11280. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11281. };
  11282. var BlackListObfuscatingGuard_1;
  11283. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11284. exports.BlackListObfuscatingGuard = void 0;
  11285. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11286. const ObfuscatingGuardResult_1 = __webpack_require__(/*! ../../../enums/node/ObfuscatingGuardResult */ "./src/enums/node/ObfuscatingGuardResult.ts");
  11287. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11288. let BlackListObfuscatingGuard = BlackListObfuscatingGuard_1 = class BlackListObfuscatingGuard {
  11289. constructor() {
  11290. this.blackListGuardsLength = BlackListObfuscatingGuard_1.blackListGuards.length;
  11291. }
  11292. check(node) {
  11293. for (let i = 0; i < this.blackListGuardsLength; i++) {
  11294. if (BlackListObfuscatingGuard_1.blackListGuards[i](node)) {
  11295. return ObfuscatingGuardResult_1.ObfuscatingGuardResult.Ignore;
  11296. }
  11297. }
  11298. return ObfuscatingGuardResult_1.ObfuscatingGuardResult.Transform;
  11299. }
  11300. };
  11301. BlackListObfuscatingGuard.blackListGuards = [
  11302. NodeGuards_1.NodeGuards.isUseStrictOperator
  11303. ];
  11304. BlackListObfuscatingGuard = BlackListObfuscatingGuard_1 = __decorate([
  11305. inversify_1.injectable(),
  11306. __metadata("design:paramtypes", [])
  11307. ], BlackListObfuscatingGuard);
  11308. exports.BlackListObfuscatingGuard = BlackListObfuscatingGuard;
  11309. /***/ }),
  11310. /***/ "./src/node-transformers/preparing-transformers/obfuscating-guards/ConditionalCommentObfuscatingGuard.ts":
  11311. /*!***************************************************************************************************************!*\
  11312. !*** ./src/node-transformers/preparing-transformers/obfuscating-guards/ConditionalCommentObfuscatingGuard.ts ***!
  11313. \***************************************************************************************************************/
  11314. /*! unknown exports (runtime-defined) */
  11315. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11316. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11317. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11318. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11319. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11320. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11321. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11322. };
  11323. var ConditionalCommentObfuscatingGuard_1;
  11324. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11325. exports.ConditionalCommentObfuscatingGuard = void 0;
  11326. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11327. const ObfuscatingGuardResult_1 = __webpack_require__(/*! ../../../enums/node/ObfuscatingGuardResult */ "./src/enums/node/ObfuscatingGuardResult.ts");
  11328. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11329. let ConditionalCommentObfuscatingGuard = ConditionalCommentObfuscatingGuard_1 = class ConditionalCommentObfuscatingGuard {
  11330. constructor() {
  11331. this.obfuscationAllowed = true;
  11332. }
  11333. static isConditionalComment(comment) {
  11334. return ConditionalCommentObfuscatingGuard_1.obfuscationEnableCommentRegExp.test(comment.value) ||
  11335. ConditionalCommentObfuscatingGuard_1.obfuscationDisableCommentRegExp.test(comment.value);
  11336. }
  11337. check(node) {
  11338. if (NodeGuards_1.NodeGuards.isNodeWithComments(node)) {
  11339. const leadingComments = node.leadingComments;
  11340. if (leadingComments) {
  11341. this.obfuscationAllowed = this.checkComments(leadingComments);
  11342. }
  11343. }
  11344. return this.obfuscationAllowed
  11345. ? ObfuscatingGuardResult_1.ObfuscatingGuardResult.Transform
  11346. : ObfuscatingGuardResult_1.ObfuscatingGuardResult.Ignore;
  11347. }
  11348. checkComments(comments) {
  11349. const commentsLength = comments.length;
  11350. let obfuscationAllowed = this.obfuscationAllowed;
  11351. for (let i = 0; i < commentsLength; i++) {
  11352. const comment = comments[i];
  11353. if (ConditionalCommentObfuscatingGuard_1.obfuscationEnableCommentRegExp.test(comment.value)) {
  11354. obfuscationAllowed = true;
  11355. continue;
  11356. }
  11357. if (ConditionalCommentObfuscatingGuard_1.obfuscationDisableCommentRegExp.test(comment.value)) {
  11358. obfuscationAllowed = false;
  11359. }
  11360. }
  11361. return obfuscationAllowed;
  11362. }
  11363. };
  11364. ConditionalCommentObfuscatingGuard.obfuscationEnableCommentRegExp = new RegExp('javascript-obfuscator *: *enable');
  11365. ConditionalCommentObfuscatingGuard.obfuscationDisableCommentRegExp = new RegExp('javascript-obfuscator *: *disable');
  11366. ConditionalCommentObfuscatingGuard = ConditionalCommentObfuscatingGuard_1 = __decorate([
  11367. inversify_1.injectable()
  11368. ], ConditionalCommentObfuscatingGuard);
  11369. exports.ConditionalCommentObfuscatingGuard = ConditionalCommentObfuscatingGuard;
  11370. /***/ }),
  11371. /***/ "./src/node-transformers/preparing-transformers/obfuscating-guards/ForceTransformStringObfuscatingGuard.ts":
  11372. /*!*****************************************************************************************************************!*\
  11373. !*** ./src/node-transformers/preparing-transformers/obfuscating-guards/ForceTransformStringObfuscatingGuard.ts ***!
  11374. \*****************************************************************************************************************/
  11375. /*! unknown exports (runtime-defined) */
  11376. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11377. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11378. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11379. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11380. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11381. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11382. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11383. };
  11384. var __metadata = (this && this.__metadata) || function (k, v) {
  11385. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11386. };
  11387. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11388. return function (target, key) { decorator(target, key, paramIndex); }
  11389. };
  11390. var _a;
  11391. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11392. exports.ForceTransformStringObfuscatingGuard = void 0;
  11393. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11394. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11395. const ObfuscatingGuardResult_1 = __webpack_require__(/*! ../../../enums/node/ObfuscatingGuardResult */ "./src/enums/node/ObfuscatingGuardResult.ts");
  11396. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11397. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11398. let ForceTransformStringObfuscatingGuard = class ForceTransformStringObfuscatingGuard {
  11399. constructor(options) {
  11400. this.options = options;
  11401. }
  11402. check(node) {
  11403. if (this.options.forceTransformStrings.length
  11404. && NodeGuards_1.NodeGuards.isLiteralNode(node)
  11405. && typeof node.value === 'string') {
  11406. return !this.isForceTransformString(node.value)
  11407. ? ObfuscatingGuardResult_1.ObfuscatingGuardResult.Transform
  11408. : ObfuscatingGuardResult_1.ObfuscatingGuardResult.ForceTransform;
  11409. }
  11410. return ObfuscatingGuardResult_1.ObfuscatingGuardResult.Transform;
  11411. }
  11412. isForceTransformString(value) {
  11413. return this.options.forceTransformStrings
  11414. .some((forceTransformString) => {
  11415. return new RegExp(forceTransformString, 'g').exec(value) !== null;
  11416. });
  11417. }
  11418. };
  11419. ForceTransformStringObfuscatingGuard = __decorate([
  11420. inversify_1.injectable(),
  11421. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11422. __metadata("design:paramtypes", [typeof (_a = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _a : Object])
  11423. ], ForceTransformStringObfuscatingGuard);
  11424. exports.ForceTransformStringObfuscatingGuard = ForceTransformStringObfuscatingGuard;
  11425. /***/ }),
  11426. /***/ "./src/node-transformers/preparing-transformers/obfuscating-guards/IgnoredRequireImportObfuscatingGuard.ts":
  11427. /*!*****************************************************************************************************************!*\
  11428. !*** ./src/node-transformers/preparing-transformers/obfuscating-guards/IgnoredRequireImportObfuscatingGuard.ts ***!
  11429. \*****************************************************************************************************************/
  11430. /*! unknown exports (runtime-defined) */
  11431. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11432. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11433. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11434. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11435. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11436. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11437. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11438. };
  11439. var __metadata = (this && this.__metadata) || function (k, v) {
  11440. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11441. };
  11442. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11443. return function (target, key) { decorator(target, key, paramIndex); }
  11444. };
  11445. var _a;
  11446. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11447. exports.IgnoredRequireImportObfuscatingGuard = void 0;
  11448. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11449. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11450. const ObfuscatingGuardResult_1 = __webpack_require__(/*! ../../../enums/node/ObfuscatingGuardResult */ "./src/enums/node/ObfuscatingGuardResult.ts");
  11451. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11452. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11453. let IgnoredRequireImportObfuscatingGuard = class IgnoredRequireImportObfuscatingGuard {
  11454. constructor(options) {
  11455. this.options = options;
  11456. }
  11457. check(node) {
  11458. if (this.options.ignoreRequireImports
  11459. && NodeGuards_1.NodeGuards.isCallExpressionNode(node)
  11460. && NodeGuards_1.NodeGuards.isIdentifierNode(node.callee)
  11461. && node.callee.name === 'require') {
  11462. return ObfuscatingGuardResult_1.ObfuscatingGuardResult.Ignore;
  11463. }
  11464. return ObfuscatingGuardResult_1.ObfuscatingGuardResult.Transform;
  11465. }
  11466. };
  11467. IgnoredRequireImportObfuscatingGuard = __decorate([
  11468. inversify_1.injectable(),
  11469. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11470. __metadata("design:paramtypes", [typeof (_a = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _a : Object])
  11471. ], IgnoredRequireImportObfuscatingGuard);
  11472. exports.IgnoredRequireImportObfuscatingGuard = IgnoredRequireImportObfuscatingGuard;
  11473. /***/ }),
  11474. /***/ "./src/node-transformers/preparing-transformers/obfuscating-guards/ReservedStringObfuscatingGuard.ts":
  11475. /*!***********************************************************************************************************!*\
  11476. !*** ./src/node-transformers/preparing-transformers/obfuscating-guards/ReservedStringObfuscatingGuard.ts ***!
  11477. \***********************************************************************************************************/
  11478. /*! unknown exports (runtime-defined) */
  11479. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11480. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11481. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11482. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11483. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11484. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11485. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11486. };
  11487. var __metadata = (this && this.__metadata) || function (k, v) {
  11488. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11489. };
  11490. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11491. return function (target, key) { decorator(target, key, paramIndex); }
  11492. };
  11493. var _a;
  11494. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11495. exports.ReservedStringObfuscatingGuard = void 0;
  11496. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11497. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11498. const ObfuscatingGuardResult_1 = __webpack_require__(/*! ../../../enums/node/ObfuscatingGuardResult */ "./src/enums/node/ObfuscatingGuardResult.ts");
  11499. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11500. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11501. let ReservedStringObfuscatingGuard = class ReservedStringObfuscatingGuard {
  11502. constructor(options) {
  11503. this.options = options;
  11504. }
  11505. check(node) {
  11506. if (this.options.reservedStrings.length
  11507. && NodeGuards_1.NodeGuards.isLiteralNode(node)
  11508. && typeof node.value === 'string') {
  11509. return !this.isReservedString(node.value)
  11510. ? ObfuscatingGuardResult_1.ObfuscatingGuardResult.Transform
  11511. : ObfuscatingGuardResult_1.ObfuscatingGuardResult.Ignore;
  11512. }
  11513. return ObfuscatingGuardResult_1.ObfuscatingGuardResult.Transform;
  11514. }
  11515. isReservedString(value) {
  11516. return this.options.reservedStrings
  11517. .some((reservedString) => {
  11518. return new RegExp(reservedString, 'g').exec(value) !== null;
  11519. });
  11520. }
  11521. };
  11522. ReservedStringObfuscatingGuard = __decorate([
  11523. inversify_1.injectable(),
  11524. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11525. __metadata("design:paramtypes", [typeof (_a = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _a : Object])
  11526. ], ReservedStringObfuscatingGuard);
  11527. exports.ReservedStringObfuscatingGuard = ReservedStringObfuscatingGuard;
  11528. /***/ }),
  11529. /***/ "./src/node-transformers/rename-identifiers-transformers/LabeledStatementTransformer.ts":
  11530. /*!**********************************************************************************************!*\
  11531. !*** ./src/node-transformers/rename-identifiers-transformers/LabeledStatementTransformer.ts ***!
  11532. \**********************************************************************************************/
  11533. /*! unknown exports (runtime-defined) */
  11534. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11535. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11536. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  11537. if (k2 === undefined) k2 = k;
  11538. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  11539. }) : (function(o, m, k, k2) {
  11540. if (k2 === undefined) k2 = k;
  11541. o[k2] = m[k];
  11542. }));
  11543. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  11544. Object.defineProperty(o, "default", { enumerable: true, value: v });
  11545. }) : function(o, v) {
  11546. o["default"] = v;
  11547. });
  11548. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11549. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11550. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11551. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11552. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11553. };
  11554. var __importStar = (this && this.__importStar) || function (mod) {
  11555. if (mod && mod.__esModule) return mod;
  11556. var result = {};
  11557. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  11558. __setModuleDefault(result, mod);
  11559. return result;
  11560. };
  11561. var __metadata = (this && this.__metadata) || function (k, v) {
  11562. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11563. };
  11564. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11565. return function (target, key) { decorator(target, key, paramIndex); }
  11566. };
  11567. var _a, _b, _c;
  11568. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11569. exports.LabeledStatementTransformer = void 0;
  11570. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11571. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11572. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  11573. const IIdentifierReplacer_1 = __webpack_require__(/*! ../../interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer */ "./src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer.ts");
  11574. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11575. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  11576. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  11577. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  11578. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11579. const NodeLexicalScopeUtils_1 = __webpack_require__(/*! ../../node/NodeLexicalScopeUtils */ "./src/node/NodeLexicalScopeUtils.ts");
  11580. let LabeledStatementTransformer = class LabeledStatementTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  11581. constructor(identifierReplacer, randomGenerator, options) {
  11582. super(randomGenerator, options);
  11583. this.identifierReplacer = identifierReplacer;
  11584. }
  11585. getVisitor(nodeTransformationStage) {
  11586. switch (nodeTransformationStage) {
  11587. case NodeTransformationStage_1.NodeTransformationStage.RenameIdentifiers:
  11588. return {
  11589. enter: (node, parentNode) => {
  11590. if (parentNode && NodeGuards_1.NodeGuards.isLabeledStatementNode(node)) {
  11591. return this.transformNode(node, parentNode);
  11592. }
  11593. }
  11594. };
  11595. default:
  11596. return null;
  11597. }
  11598. }
  11599. transformNode(labeledStatementNode, parentNode) {
  11600. const lexicalScopeNode = NodeLexicalScopeUtils_1.NodeLexicalScopeUtils.getLexicalScope(labeledStatementNode);
  11601. if (!lexicalScopeNode) {
  11602. return labeledStatementNode;
  11603. }
  11604. this.storeLabeledStatementName(labeledStatementNode, lexicalScopeNode);
  11605. this.replaceLabeledStatementName(labeledStatementNode, lexicalScopeNode);
  11606. return labeledStatementNode;
  11607. }
  11608. storeLabeledStatementName(labeledStatementNode, lexicalScopeNode) {
  11609. this.identifierReplacer.storeLocalName(labeledStatementNode.label, lexicalScopeNode);
  11610. }
  11611. replaceLabeledStatementName(labeledStatementNode, lexicalScopeNode) {
  11612. estraverse.replace(labeledStatementNode, {
  11613. enter: (node, parentNode) => {
  11614. if (parentNode && NodeGuards_1.NodeGuards.isLabelIdentifierNode(node, parentNode)) {
  11615. const newIdentifier = this.identifierReplacer
  11616. .replace(node, lexicalScopeNode);
  11617. node.name = newIdentifier.name;
  11618. }
  11619. }
  11620. });
  11621. }
  11622. };
  11623. LabeledStatementTransformer = __decorate([
  11624. inversify_1.injectable(),
  11625. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierReplacer)),
  11626. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  11627. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11628. __metadata("design:paramtypes", [typeof (_a = typeof IIdentifierReplacer_1.IIdentifierReplacer !== "undefined" && IIdentifierReplacer_1.IIdentifierReplacer) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  11629. ], LabeledStatementTransformer);
  11630. exports.LabeledStatementTransformer = LabeledStatementTransformer;
  11631. /***/ }),
  11632. /***/ "./src/node-transformers/rename-identifiers-transformers/ScopeIdentifiersTransformer.ts":
  11633. /*!**********************************************************************************************!*\
  11634. !*** ./src/node-transformers/rename-identifiers-transformers/ScopeIdentifiersTransformer.ts ***!
  11635. \**********************************************************************************************/
  11636. /*! unknown exports (runtime-defined) */
  11637. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11638. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11639. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  11640. if (k2 === undefined) k2 = k;
  11641. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  11642. }) : (function(o, m, k, k2) {
  11643. if (k2 === undefined) k2 = k;
  11644. o[k2] = m[k];
  11645. }));
  11646. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  11647. Object.defineProperty(o, "default", { enumerable: true, value: v });
  11648. }) : function(o, v) {
  11649. o["default"] = v;
  11650. });
  11651. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11652. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11653. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11654. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11655. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11656. };
  11657. var __importStar = (this && this.__importStar) || function (mod) {
  11658. if (mod && mod.__esModule) return mod;
  11659. var result = {};
  11660. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  11661. __setModuleDefault(result, mod);
  11662. return result;
  11663. };
  11664. var __metadata = (this && this.__metadata) || function (k, v) {
  11665. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11666. };
  11667. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11668. return function (target, key) { decorator(target, key, paramIndex); }
  11669. };
  11670. var _a, _b, _c, _d;
  11671. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11672. exports.ScopeIdentifiersTransformer = void 0;
  11673. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11674. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11675. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  11676. const IIdentifierReplacer_1 = __webpack_require__(/*! ../../interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer */ "./src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer.ts");
  11677. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11678. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  11679. const IScopeIdentifiersTraverser_1 = __webpack_require__(/*! ../../interfaces/node/IScopeIdentifiersTraverser */ "./src/interfaces/node/IScopeIdentifiersTraverser.ts");
  11680. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  11681. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  11682. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11683. const NodeMetadata_1 = __webpack_require__(/*! ../../node/NodeMetadata */ "./src/node/NodeMetadata.ts");
  11684. let ScopeIdentifiersTransformer = class ScopeIdentifiersTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  11685. constructor(identifierReplacer, randomGenerator, options, scopeIdentifiersTraverser) {
  11686. super(randomGenerator, options);
  11687. this.lexicalScopesWithObjectPatternWithoutDeclarationMap = new Map();
  11688. this.identifierReplacer = identifierReplacer;
  11689. this.scopeIdentifiersTraverser = scopeIdentifiersTraverser;
  11690. }
  11691. getVisitor(nodeTransformationStage) {
  11692. switch (nodeTransformationStage) {
  11693. case NodeTransformationStage_1.NodeTransformationStage.RenameIdentifiers:
  11694. return {
  11695. enter: (node, parentNode) => {
  11696. if (parentNode && NodeGuards_1.NodeGuards.isProgramNode(node)) {
  11697. return this.transformNode(node, parentNode);
  11698. }
  11699. }
  11700. };
  11701. default:
  11702. return null;
  11703. }
  11704. }
  11705. transformNode(programNode, parentNode) {
  11706. this.scopeIdentifiersTraverser.traverseScopeIdentifiers(programNode, parentNode, (data) => {
  11707. const { isGlobalDeclaration, variable, variableLexicalScopeNode } = data;
  11708. if (!this.options.renameGlobals && isGlobalDeclaration) {
  11709. const isImportBindingOrCatchClauseIdentifier = variable.defs
  11710. .every((definition) => definition.type === 'ImportBinding'
  11711. || definition.type === 'CatchClause');
  11712. if (!isImportBindingOrCatchClauseIdentifier) {
  11713. return;
  11714. }
  11715. }
  11716. this.transformScopeVariableIdentifiers(variable, variableLexicalScopeNode, isGlobalDeclaration);
  11717. });
  11718. return programNode;
  11719. }
  11720. transformScopeVariableIdentifiers(variable, lexicalScopeNode, isGlobalDeclaration) {
  11721. var _a;
  11722. const firstIdentifier = (_a = variable.identifiers[0]) !== null && _a !== void 0 ? _a : null;
  11723. if (!firstIdentifier) {
  11724. return;
  11725. }
  11726. if (!this.isReplaceableIdentifierNode(firstIdentifier, lexicalScopeNode, variable)) {
  11727. return;
  11728. }
  11729. this.storeIdentifierName(firstIdentifier, lexicalScopeNode, isGlobalDeclaration);
  11730. this.replaceIdentifierName(firstIdentifier, lexicalScopeNode, variable);
  11731. }
  11732. storeIdentifierName(identifierNode, lexicalScopeNode, isGlobalDeclaration) {
  11733. if (isGlobalDeclaration) {
  11734. this.identifierReplacer.storeGlobalName(identifierNode, lexicalScopeNode);
  11735. }
  11736. else {
  11737. this.identifierReplacer.storeLocalName(identifierNode, lexicalScopeNode);
  11738. }
  11739. }
  11740. replaceIdentifierName(identifierNode, lexicalScopeNode, variable) {
  11741. const newIdentifier = this.identifierReplacer
  11742. .replace(identifierNode, lexicalScopeNode);
  11743. variable.identifiers.forEach((identifier) => {
  11744. identifier.name = newIdentifier.name;
  11745. });
  11746. variable.references.forEach((reference) => {
  11747. reference.identifier.name = identifierNode.name;
  11748. });
  11749. }
  11750. isReplaceableIdentifierNode(identifierNode, lexicalScopeNode, variable) {
  11751. const parentNode = identifierNode.parentNode;
  11752. return !!parentNode
  11753. && !NodeMetadata_1.NodeMetadata.isIgnoredNode(identifierNode)
  11754. && !this.isProhibitedPropertyIdentifierNode(identifierNode, parentNode)
  11755. && !this.isProhibitedPropertyAssignmentPatternIdentifierNode(identifierNode, parentNode)
  11756. && !this.isProhibitedClassDeclarationNameIdentifierNode(variable, identifierNode, parentNode)
  11757. && !this.isProhibitedExportNamedClassDeclarationIdentifierNode(identifierNode, parentNode)
  11758. && !this.isProhibitedExportNamedFunctionDeclarationIdentifierNode(identifierNode, parentNode)
  11759. && !this.isProhibitedExportNamedVariableDeclarationIdentifierNode(identifierNode, parentNode)
  11760. && !this.isProhibitedImportSpecifierNode(identifierNode, parentNode)
  11761. && !this.isProhibitedVariableNameUsedInObjectPatternNode(variable, identifierNode, lexicalScopeNode)
  11762. && !NodeGuards_1.NodeGuards.isLabelIdentifierNode(identifierNode, parentNode);
  11763. }
  11764. isProhibitedClassDeclarationNameIdentifierNode(variable, identifierNode, parentNode) {
  11765. return NodeGuards_1.NodeGuards.isClassDeclarationNode(variable.scope.block)
  11766. && NodeGuards_1.NodeGuards.isClassDeclarationNode(parentNode)
  11767. && parentNode.id === identifierNode;
  11768. }
  11769. isProhibitedExportNamedClassDeclarationIdentifierNode(identifierNode, parentNode) {
  11770. return NodeGuards_1.NodeGuards.isClassDeclarationNode(parentNode)
  11771. && parentNode.id === identifierNode
  11772. && !!parentNode.parentNode
  11773. && NodeGuards_1.NodeGuards.isExportNamedDeclarationNode(parentNode.parentNode);
  11774. }
  11775. isProhibitedExportNamedFunctionDeclarationIdentifierNode(identifierNode, parentNode) {
  11776. return NodeGuards_1.NodeGuards.isFunctionDeclarationNode(parentNode)
  11777. && parentNode.id === identifierNode
  11778. && !!parentNode.parentNode
  11779. && NodeGuards_1.NodeGuards.isExportNamedDeclarationNode(parentNode.parentNode);
  11780. }
  11781. isProhibitedExportNamedVariableDeclarationIdentifierNode(identifierNode, parentNode) {
  11782. return NodeGuards_1.NodeGuards.isVariableDeclaratorNode(parentNode)
  11783. && parentNode.id === identifierNode
  11784. && !!parentNode.parentNode
  11785. && NodeGuards_1.NodeGuards.isVariableDeclarationNode(parentNode.parentNode)
  11786. && !!parentNode.parentNode.parentNode
  11787. && NodeGuards_1.NodeGuards.isExportNamedDeclarationNode(parentNode.parentNode.parentNode);
  11788. }
  11789. isProhibitedImportSpecifierNode(identifierNode, parentNode) {
  11790. return NodeGuards_1.NodeGuards.isImportSpecifierNode(parentNode)
  11791. && parentNode.imported.name === parentNode.local.name;
  11792. }
  11793. isProhibitedPropertyIdentifierNode(node, parentNode) {
  11794. return NodeGuards_1.NodeGuards.isPropertyNode(parentNode)
  11795. && !parentNode.computed
  11796. && NodeGuards_1.NodeGuards.isIdentifierNode(parentNode.key)
  11797. && NodeGuards_1.NodeGuards.isIdentifierNode(node)
  11798. && parentNode.shorthand
  11799. && parentNode.key.name === node.name;
  11800. }
  11801. isProhibitedPropertyAssignmentPatternIdentifierNode(node, parentNode) {
  11802. return NodeGuards_1.NodeGuards.isAssignmentPatternNode(parentNode)
  11803. && parentNode.left === node
  11804. && !!parentNode.parentNode
  11805. && NodeGuards_1.NodeGuards.isPropertyNode(parentNode.parentNode)
  11806. && NodeGuards_1.NodeGuards.isIdentifierNode(parentNode.left)
  11807. && NodeGuards_1.NodeGuards.isIdentifierNode(parentNode.parentNode.key)
  11808. && parentNode.left.name === parentNode.parentNode.key.name;
  11809. }
  11810. isProhibitedVariableNameUsedInObjectPatternNode(variable, identifierNode, lexicalScopeNode) {
  11811. let isLexicalScopeHasObjectPatternWithoutDeclaration = this.lexicalScopesWithObjectPatternWithoutDeclarationMap.get(lexicalScopeNode);
  11812. if (isLexicalScopeHasObjectPatternWithoutDeclaration === false) {
  11813. return false;
  11814. }
  11815. const hasVarDefinitions = variable.defs.some((definition) => definition.kind === 'var');
  11816. if (!hasVarDefinitions) {
  11817. return false;
  11818. }
  11819. let isProhibitedVariableDeclaration = false;
  11820. estraverse.traverse(lexicalScopeNode, {
  11821. enter: (node, parentNode) => {
  11822. if (NodeGuards_1.NodeGuards.isObjectPatternNode(node)
  11823. && parentNode
  11824. && NodeGuards_1.NodeGuards.isAssignmentExpressionNode(parentNode)) {
  11825. isLexicalScopeHasObjectPatternWithoutDeclaration = true;
  11826. const properties = node.properties;
  11827. for (const property of properties) {
  11828. if (!NodeGuards_1.NodeGuards.isPropertyNode(property)) {
  11829. continue;
  11830. }
  11831. if (property.computed || !property.shorthand) {
  11832. continue;
  11833. }
  11834. if (!NodeGuards_1.NodeGuards.isIdentifierNode(property.key)) {
  11835. continue;
  11836. }
  11837. if (identifierNode.name !== property.key.name) {
  11838. continue;
  11839. }
  11840. isProhibitedVariableDeclaration = true;
  11841. return estraverse.VisitorOption.Break;
  11842. }
  11843. }
  11844. }
  11845. });
  11846. this.lexicalScopesWithObjectPatternWithoutDeclarationMap.set(lexicalScopeNode, isLexicalScopeHasObjectPatternWithoutDeclaration !== null && isLexicalScopeHasObjectPatternWithoutDeclaration !== void 0 ? isLexicalScopeHasObjectPatternWithoutDeclaration : false);
  11847. return isProhibitedVariableDeclaration;
  11848. }
  11849. };
  11850. ScopeIdentifiersTransformer = __decorate([
  11851. inversify_1.injectable(),
  11852. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierReplacer)),
  11853. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  11854. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11855. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IScopeIdentifiersTraverser)),
  11856. __metadata("design:paramtypes", [typeof (_a = typeof IIdentifierReplacer_1.IIdentifierReplacer !== "undefined" && IIdentifierReplacer_1.IIdentifierReplacer) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object, typeof (_d = typeof IScopeIdentifiersTraverser_1.IScopeIdentifiersTraverser !== "undefined" && IScopeIdentifiersTraverser_1.IScopeIdentifiersTraverser) === "function" ? _d : Object])
  11857. ], ScopeIdentifiersTransformer);
  11858. exports.ScopeIdentifiersTransformer = ScopeIdentifiersTransformer;
  11859. /***/ }),
  11860. /***/ "./src/node-transformers/rename-identifiers-transformers/ScopeThroughIdentifiersTransformer.ts":
  11861. /*!*****************************************************************************************************!*\
  11862. !*** ./src/node-transformers/rename-identifiers-transformers/ScopeThroughIdentifiersTransformer.ts ***!
  11863. \*****************************************************************************************************/
  11864. /*! unknown exports (runtime-defined) */
  11865. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11866. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11867. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11868. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11869. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11870. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11871. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11872. };
  11873. var __metadata = (this && this.__metadata) || function (k, v) {
  11874. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11875. };
  11876. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11877. return function (target, key) { decorator(target, key, paramIndex); }
  11878. };
  11879. var _a, _b, _c, _d;
  11880. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11881. exports.ScopeThroughIdentifiersTransformer = void 0;
  11882. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11883. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11884. const IIdentifierReplacer_1 = __webpack_require__(/*! ../../interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer */ "./src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer.ts");
  11885. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11886. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  11887. const IScopeIdentifiersTraverser_1 = __webpack_require__(/*! ../../interfaces/node/IScopeIdentifiersTraverser */ "./src/interfaces/node/IScopeIdentifiersTraverser.ts");
  11888. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  11889. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  11890. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  11891. let ScopeThroughIdentifiersTransformer = class ScopeThroughIdentifiersTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  11892. constructor(identifierReplacer, randomGenerator, options, scopeIdentifiersTraverser) {
  11893. super(randomGenerator, options);
  11894. this.identifierReplacer = identifierReplacer;
  11895. this.scopeIdentifiersTraverser = scopeIdentifiersTraverser;
  11896. }
  11897. getVisitor(nodeTransformationStage) {
  11898. switch (nodeTransformationStage) {
  11899. case NodeTransformationStage_1.NodeTransformationStage.RenameIdentifiers:
  11900. return {
  11901. enter: (node, parentNode) => {
  11902. if (parentNode && NodeGuards_1.NodeGuards.isProgramNode(node)) {
  11903. return this.transformNode(node, parentNode);
  11904. }
  11905. }
  11906. };
  11907. default:
  11908. return null;
  11909. }
  11910. }
  11911. transformNode(programNode, parentNode) {
  11912. this.scopeIdentifiersTraverser.traverseScopeThroughIdentifiers(programNode, parentNode, (data) => {
  11913. const { reference, variableLexicalScopeNode } = data;
  11914. this.transformScopeThroughIdentifiers(reference, variableLexicalScopeNode);
  11915. });
  11916. return programNode;
  11917. }
  11918. transformScopeThroughIdentifiers(reference, lexicalScopeNode) {
  11919. if (reference.resolved) {
  11920. return;
  11921. }
  11922. const identifier = reference.identifier;
  11923. this.storeIdentifierName(identifier, lexicalScopeNode);
  11924. this.replaceIdentifierName(identifier, lexicalScopeNode, reference);
  11925. }
  11926. storeIdentifierName(identifierNode, lexicalScopeNode) {
  11927. this.identifierReplacer.storeLocalName(identifierNode, lexicalScopeNode);
  11928. }
  11929. replaceIdentifierName(identifierNode, lexicalScopeNode, reference) {
  11930. const newIdentifier = this.identifierReplacer
  11931. .replace(identifierNode, lexicalScopeNode);
  11932. reference.identifier.name = newIdentifier.name;
  11933. }
  11934. };
  11935. ScopeThroughIdentifiersTransformer = __decorate([
  11936. inversify_1.injectable(),
  11937. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IIdentifierReplacer)),
  11938. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  11939. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  11940. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IScopeIdentifiersTraverser)),
  11941. __metadata("design:paramtypes", [typeof (_a = typeof IIdentifierReplacer_1.IIdentifierReplacer !== "undefined" && IIdentifierReplacer_1.IIdentifierReplacer) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object, typeof (_d = typeof IScopeIdentifiersTraverser_1.IScopeIdentifiersTraverser !== "undefined" && IScopeIdentifiersTraverser_1.IScopeIdentifiersTraverser) === "function" ? _d : Object])
  11942. ], ScopeThroughIdentifiersTransformer);
  11943. exports.ScopeThroughIdentifiersTransformer = ScopeThroughIdentifiersTransformer;
  11944. /***/ }),
  11945. /***/ "./src/node-transformers/rename-identifiers-transformers/replacer/IdentifierReplacer.ts":
  11946. /*!**********************************************************************************************!*\
  11947. !*** ./src/node-transformers/rename-identifiers-transformers/replacer/IdentifierReplacer.ts ***!
  11948. \**********************************************************************************************/
  11949. /*! unknown exports (runtime-defined) */
  11950. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  11951. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  11952. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  11953. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  11954. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  11955. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  11956. return c > 3 && r && Object.defineProperty(target, key, r), r;
  11957. };
  11958. var __metadata = (this && this.__metadata) || function (k, v) {
  11959. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  11960. };
  11961. var __param = (this && this.__param) || function (paramIndex, decorator) {
  11962. return function (target, key) { decorator(target, key, paramIndex); }
  11963. };
  11964. var _a, _b;
  11965. Object.defineProperty(exports, "__esModule", ({ value: true }));
  11966. exports.IdentifierReplacer = void 0;
  11967. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  11968. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  11969. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  11970. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  11971. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  11972. let IdentifierReplacer = class IdentifierReplacer {
  11973. constructor(identifierNamesGeneratorFactory, options) {
  11974. this.blockScopesMap = new Map();
  11975. this.options = options;
  11976. this.identifierNamesGenerator = identifierNamesGeneratorFactory(options);
  11977. }
  11978. storeGlobalName(identifierNode, lexicalScopeNode) {
  11979. const identifierName = identifierNode.name;
  11980. if (this.isReservedName(identifierName)) {
  11981. return;
  11982. }
  11983. const newIdentifierName = this.identifierNamesGenerator.generateForGlobalScope();
  11984. if (!this.blockScopesMap.has(lexicalScopeNode)) {
  11985. this.blockScopesMap.set(lexicalScopeNode, new Map());
  11986. }
  11987. const namesMap = this.blockScopesMap.get(lexicalScopeNode);
  11988. namesMap.set(identifierName, newIdentifierName);
  11989. }
  11990. storeLocalName(identifierNode, lexicalScopeNode) {
  11991. const identifierName = identifierNode.name;
  11992. if (this.isReservedName(identifierName)) {
  11993. return;
  11994. }
  11995. const newIdentifierName = this.identifierNamesGenerator.generateForLexicalScope(lexicalScopeNode);
  11996. if (!this.blockScopesMap.has(lexicalScopeNode)) {
  11997. this.blockScopesMap.set(lexicalScopeNode, new Map());
  11998. }
  11999. const namesMap = this.blockScopesMap.get(lexicalScopeNode);
  12000. namesMap.set(identifierName, newIdentifierName);
  12001. }
  12002. replace(identifierNode, lexicalScopeNode) {
  12003. let identifierName = identifierNode.name;
  12004. if (this.blockScopesMap.has(lexicalScopeNode)) {
  12005. const namesMap = this.blockScopesMap.get(lexicalScopeNode);
  12006. if (namesMap.has(identifierName)) {
  12007. identifierName = namesMap.get(identifierName);
  12008. }
  12009. }
  12010. return NodeFactory_1.NodeFactory.identifierNode(identifierName);
  12011. }
  12012. preserveName(identifierNode) {
  12013. this.identifierNamesGenerator.preserveName(identifierNode.name);
  12014. }
  12015. preserveNameForLexicalScope(identifierNode, lexicalScopeNode) {
  12016. this.identifierNamesGenerator.preserveNameForLexicalScope(identifierNode.name, lexicalScopeNode);
  12017. }
  12018. isReservedName(name) {
  12019. if (!this.options.reservedNames.length) {
  12020. return false;
  12021. }
  12022. return this.options.reservedNames
  12023. .some((reservedName) => {
  12024. return new RegExp(reservedName, 'g').exec(name) !== null;
  12025. });
  12026. }
  12027. };
  12028. IdentifierReplacer = __decorate([
  12029. inversify_1.injectable(),
  12030. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  12031. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12032. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  12033. ], IdentifierReplacer);
  12034. exports.IdentifierReplacer = IdentifierReplacer;
  12035. /***/ }),
  12036. /***/ "./src/node-transformers/rename-properties-transformers/RenamePropertiesTransformer.ts":
  12037. /*!*********************************************************************************************!*\
  12038. !*** ./src/node-transformers/rename-properties-transformers/RenamePropertiesTransformer.ts ***!
  12039. \*********************************************************************************************/
  12040. /*! unknown exports (runtime-defined) */
  12041. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12042. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12043. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12044. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12045. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12046. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12047. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12048. };
  12049. var __metadata = (this && this.__metadata) || function (k, v) {
  12050. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12051. };
  12052. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12053. return function (target, key) { decorator(target, key, paramIndex); }
  12054. };
  12055. var RenamePropertiesTransformer_1, _a, _b, _c;
  12056. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12057. exports.RenamePropertiesTransformer = void 0;
  12058. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12059. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12060. const IRenamePropertiesReplacer_1 = __webpack_require__(/*! ../../interfaces/node-transformers/rename-properties-transformers/replacer/IRenamePropertiesReplacer */ "./src/interfaces/node-transformers/rename-properties-transformers/replacer/IRenamePropertiesReplacer.ts");
  12061. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12062. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  12063. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  12064. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  12065. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12066. let RenamePropertiesTransformer = RenamePropertiesTransformer_1 = class RenamePropertiesTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  12067. constructor(renamePropertiesReplacer, randomGenerator, options) {
  12068. super(randomGenerator, options);
  12069. this.renamePropertiesReplacer = renamePropertiesReplacer;
  12070. }
  12071. static isValidPropertyNode(propertyNode, propertyKeyNode) {
  12072. if (NodeGuards_1.NodeGuards.isIdentifierNode(propertyKeyNode) && propertyNode.computed) {
  12073. return false;
  12074. }
  12075. return NodeGuards_1.NodeGuards.isIdentifierNode(propertyKeyNode) || NodeGuards_1.NodeGuards.isLiteralNode(propertyKeyNode);
  12076. }
  12077. getVisitor(nodeTransformationStage) {
  12078. switch (nodeTransformationStage) {
  12079. case NodeTransformationStage_1.NodeTransformationStage.RenameProperties:
  12080. return {
  12081. enter: (node, parentNode) => {
  12082. if (parentNode) {
  12083. return this.transformNode(node, parentNode);
  12084. }
  12085. }
  12086. };
  12087. default:
  12088. return null;
  12089. }
  12090. }
  12091. transformNode(node, parentNode) {
  12092. if (NodeGuards_1.NodeGuards.isPropertyNode(node)) {
  12093. return this.transformPropertyNode(node);
  12094. }
  12095. if (NodeGuards_1.NodeGuards.isMemberExpressionNode(node)) {
  12096. return this.transformMemberExpressionNode(node);
  12097. }
  12098. if (NodeGuards_1.NodeGuards.isMethodDefinitionNode(node)) {
  12099. return this.transformMethodDefinitionNode(node);
  12100. }
  12101. return node;
  12102. }
  12103. transformPropertyNode(propertyNode) {
  12104. const propertyKeyNode = propertyNode.key;
  12105. if (RenamePropertiesTransformer_1.isValidPropertyNode(propertyNode, propertyKeyNode)) {
  12106. propertyNode.key = this.renamePropertiesReplacer.replace(propertyKeyNode);
  12107. propertyNode.shorthand = false;
  12108. }
  12109. return propertyNode;
  12110. }
  12111. transformMemberExpressionNode(memberExpressionNode) {
  12112. const propertyKeyNode = memberExpressionNode.property;
  12113. if (RenamePropertiesTransformer_1.isValidPropertyNode(memberExpressionNode, propertyKeyNode)) {
  12114. memberExpressionNode.property = this.renamePropertiesReplacer.replace(propertyKeyNode);
  12115. }
  12116. return memberExpressionNode;
  12117. }
  12118. transformMethodDefinitionNode(methodDefinitionNode) {
  12119. const propertyKeyNode = methodDefinitionNode.key;
  12120. if (RenamePropertiesTransformer_1.isValidPropertyNode(methodDefinitionNode, propertyKeyNode)) {
  12121. methodDefinitionNode.key = this.renamePropertiesReplacer.replace(propertyKeyNode);
  12122. }
  12123. return methodDefinitionNode;
  12124. }
  12125. };
  12126. RenamePropertiesTransformer = RenamePropertiesTransformer_1 = __decorate([
  12127. inversify_1.injectable(),
  12128. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRenamePropertiesReplacer)),
  12129. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  12130. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12131. __metadata("design:paramtypes", [typeof (_a = typeof IRenamePropertiesReplacer_1.IRenamePropertiesReplacer !== "undefined" && IRenamePropertiesReplacer_1.IRenamePropertiesReplacer) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  12132. ], RenamePropertiesTransformer);
  12133. exports.RenamePropertiesTransformer = RenamePropertiesTransformer;
  12134. /***/ }),
  12135. /***/ "./src/node-transformers/rename-properties-transformers/replacer/RenamePropertiesReplacer.ts":
  12136. /*!***************************************************************************************************!*\
  12137. !*** ./src/node-transformers/rename-properties-transformers/replacer/RenamePropertiesReplacer.ts ***!
  12138. \***************************************************************************************************/
  12139. /*! unknown exports (runtime-defined) */
  12140. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12141. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12142. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12143. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12144. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12145. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12146. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12147. };
  12148. var __metadata = (this && this.__metadata) || function (k, v) {
  12149. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12150. };
  12151. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12152. return function (target, key) { decorator(target, key, paramIndex); }
  12153. };
  12154. var __importDefault = (this && this.__importDefault) || function (mod) {
  12155. return (mod && mod.__esModule) ? mod : { "default": mod };
  12156. };
  12157. var _a, _b;
  12158. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12159. exports.RenamePropertiesReplacer = void 0;
  12160. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12161. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12162. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  12163. const IOptions_1 = __webpack_require__(/*! ../../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12164. const ReservedDomProperties_json_1 = __importDefault(__webpack_require__(/*! ./ReservedDomProperties.json */ "./src/node-transformers/rename-properties-transformers/replacer/ReservedDomProperties.json"));
  12165. const NodeGuards_1 = __webpack_require__(/*! ../../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12166. const NodeFactory_1 = __webpack_require__(/*! ../../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  12167. let RenamePropertiesReplacer = class RenamePropertiesReplacer {
  12168. constructor(identifierNamesGeneratorFactory, options) {
  12169. this.propertyNamesMap = new Map();
  12170. this.reservedDomPropertiesList = new Set(ReservedDomProperties_json_1.default);
  12171. this.identifierNamesGenerator = identifierNamesGeneratorFactory(options);
  12172. this.options = options;
  12173. }
  12174. replace(node) {
  12175. if (NodeGuards_1.NodeGuards.isIdentifierNode(node)) {
  12176. return NodeFactory_1.NodeFactory.identifierNode(this.replacePropertyName(node.name));
  12177. }
  12178. if (NodeGuards_1.NodeGuards.isLiteralNode(node) && typeof node.value === 'string') {
  12179. return NodeFactory_1.NodeFactory.literalNode(this.replacePropertyName(node.value));
  12180. }
  12181. return node;
  12182. }
  12183. replacePropertyName(propertyName) {
  12184. var _a;
  12185. if (this.isReservedName(propertyName)) {
  12186. return propertyName;
  12187. }
  12188. let renamedPropertyName = (_a = this.propertyNamesMap.get(propertyName)) !== null && _a !== void 0 ? _a : null;
  12189. if (renamedPropertyName !== null) {
  12190. return renamedPropertyName;
  12191. }
  12192. renamedPropertyName = this.identifierNamesGenerator.generateNext();
  12193. this.propertyNamesMap.set(propertyName, renamedPropertyName);
  12194. return renamedPropertyName;
  12195. }
  12196. isReservedName(name) {
  12197. return this.isReservedOptionName(name)
  12198. || this.isReservedDomPropertyName(name);
  12199. }
  12200. isReservedOptionName(name) {
  12201. if (!this.options.reservedNames.length) {
  12202. return false;
  12203. }
  12204. return this.options.reservedNames
  12205. .some((reservedName) => {
  12206. return new RegExp(reservedName, 'g').exec(name) !== null;
  12207. });
  12208. }
  12209. isReservedDomPropertyName(name) {
  12210. return this.reservedDomPropertiesList.has(name);
  12211. }
  12212. };
  12213. RenamePropertiesReplacer = __decorate([
  12214. inversify_1.injectable(),
  12215. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  12216. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12217. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  12218. ], RenamePropertiesReplacer);
  12219. exports.RenamePropertiesReplacer = RenamePropertiesReplacer;
  12220. /***/ }),
  12221. /***/ "./src/node-transformers/simplifying-transformers/AbstractStatementSimplifyTransformer.ts":
  12222. /*!************************************************************************************************!*\
  12223. !*** ./src/node-transformers/simplifying-transformers/AbstractStatementSimplifyTransformer.ts ***!
  12224. \************************************************************************************************/
  12225. /*! unknown exports (runtime-defined) */
  12226. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12227. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12228. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12229. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12230. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12231. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12232. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12233. };
  12234. var __metadata = (this && this.__metadata) || function (k, v) {
  12235. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12236. };
  12237. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12238. return function (target, key) { decorator(target, key, paramIndex); }
  12239. };
  12240. var _a, _b;
  12241. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12242. exports.AbstractStatementSimplifyTransformer = void 0;
  12243. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12244. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12245. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12246. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  12247. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  12248. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  12249. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12250. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  12251. let AbstractStatementSimplifyTransformer = class AbstractStatementSimplifyTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  12252. constructor(randomGenerator, options) {
  12253. super(randomGenerator, options);
  12254. this.runAfter = [
  12255. NodeTransformer_1.NodeTransformer.ExpressionStatementsMergeTransformer,
  12256. NodeTransformer_1.NodeTransformer.VariableDeclarationsMergeTransformer
  12257. ];
  12258. }
  12259. getStatementSimplifyData(statementNode) {
  12260. if (!statementNode) {
  12261. return null;
  12262. }
  12263. if (!NodeGuards_1.NodeGuards.isBlockStatementNode(statementNode)) {
  12264. return {
  12265. leadingStatements: [statementNode],
  12266. trailingStatement: null,
  12267. hasReturnStatement: false,
  12268. hasSingleExpression: false
  12269. };
  12270. }
  12271. const { startIndex, unwrappedExpressions, hasReturnStatement } = this.collectIteratedStatementsSimplifyData(statementNode);
  12272. const leadingStatements = this.getLeadingStatements(statementNode, startIndex);
  12273. if (!unwrappedExpressions.length) {
  12274. return {
  12275. leadingStatements,
  12276. trailingStatement: null,
  12277. hasReturnStatement,
  12278. hasSingleExpression: false
  12279. };
  12280. }
  12281. const hasSingleExpression = unwrappedExpressions.length === 1;
  12282. const expression = hasSingleExpression
  12283. ? unwrappedExpressions[0]
  12284. : NodeFactory_1.NodeFactory.sequenceExpressionNode(unwrappedExpressions);
  12285. const statement = hasReturnStatement
  12286. ? NodeFactory_1.NodeFactory.returnStatementNode(expression)
  12287. : NodeFactory_1.NodeFactory.expressionStatementNode(expression);
  12288. return {
  12289. leadingStatements,
  12290. trailingStatement: {
  12291. statement,
  12292. expression
  12293. },
  12294. hasReturnStatement,
  12295. hasSingleExpression
  12296. };
  12297. }
  12298. collectIteratedStatementsSimplifyData(statementNode) {
  12299. const statementNodeBodyLength = statementNode.body.length;
  12300. const unwrappedExpressions = [];
  12301. let hasReturnStatement = false;
  12302. let startIndex = null;
  12303. for (let i = statementNodeBodyLength - 1; i >= 0; i--) {
  12304. const statementBodyStatementNode = statementNode.body[i];
  12305. if (NodeGuards_1.NodeGuards.isExpressionStatementNode(statementBodyStatementNode)) {
  12306. if (NodeGuards_1.NodeGuards.isSequenceExpressionNode(statementBodyStatementNode.expression)) {
  12307. unwrappedExpressions.unshift(...statementBodyStatementNode.expression.expressions);
  12308. }
  12309. else {
  12310. unwrappedExpressions.unshift(statementBodyStatementNode.expression);
  12311. }
  12312. startIndex = i;
  12313. continue;
  12314. }
  12315. if (NodeGuards_1.NodeGuards.isReturnStatementNode(statementBodyStatementNode)
  12316. && statementBodyStatementNode.argument) {
  12317. unwrappedExpressions.unshift(statementBodyStatementNode.argument);
  12318. hasReturnStatement = true;
  12319. startIndex = i;
  12320. continue;
  12321. }
  12322. break;
  12323. }
  12324. return {
  12325. startIndex,
  12326. unwrappedExpressions,
  12327. hasReturnStatement
  12328. };
  12329. }
  12330. getLeadingStatements(statementNode, startIndex) {
  12331. if (startIndex === null) {
  12332. return statementNode.body;
  12333. }
  12334. return startIndex === 0
  12335. ? []
  12336. : statementNode.body.slice(0, startIndex);
  12337. }
  12338. getPartialStatement(statementSimplifyData) {
  12339. if (!statementSimplifyData.leadingStatements.length && statementSimplifyData.trailingStatement) {
  12340. return statementSimplifyData.trailingStatement.statement;
  12341. }
  12342. return NodeFactory_1.NodeFactory.blockStatementNode([
  12343. ...statementSimplifyData.leadingStatements.length ? statementSimplifyData.leadingStatements : [],
  12344. ...statementSimplifyData.trailingStatement ? [statementSimplifyData.trailingStatement.statement] : []
  12345. ]);
  12346. }
  12347. };
  12348. AbstractStatementSimplifyTransformer = __decorate([
  12349. inversify_1.injectable(),
  12350. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  12351. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12352. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  12353. ], AbstractStatementSimplifyTransformer);
  12354. exports.AbstractStatementSimplifyTransformer = AbstractStatementSimplifyTransformer;
  12355. /***/ }),
  12356. /***/ "./src/node-transformers/simplifying-transformers/BlockStatementSimplifyTransformer.ts":
  12357. /*!*********************************************************************************************!*\
  12358. !*** ./src/node-transformers/simplifying-transformers/BlockStatementSimplifyTransformer.ts ***!
  12359. \*********************************************************************************************/
  12360. /*! unknown exports (runtime-defined) */
  12361. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12362. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12363. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12364. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12365. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12366. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12367. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12368. };
  12369. var __metadata = (this && this.__metadata) || function (k, v) {
  12370. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12371. };
  12372. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12373. return function (target, key) { decorator(target, key, paramIndex); }
  12374. };
  12375. var _a, _b;
  12376. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12377. exports.BlockStatementSimplifyTransformer = void 0;
  12378. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12379. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12380. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12381. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  12382. const NodeTransformer_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformer */ "./src/enums/node-transformers/NodeTransformer.ts");
  12383. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  12384. const AbstractStatementSimplifyTransformer_1 = __webpack_require__(/*! ./AbstractStatementSimplifyTransformer */ "./src/node-transformers/simplifying-transformers/AbstractStatementSimplifyTransformer.ts");
  12385. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12386. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  12387. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  12388. let BlockStatementSimplifyTransformer = class BlockStatementSimplifyTransformer extends AbstractStatementSimplifyTransformer_1.AbstractStatementSimplifyTransformer {
  12389. constructor(randomGenerator, options) {
  12390. super(randomGenerator, options);
  12391. this.runAfter = [
  12392. NodeTransformer_1.NodeTransformer.VariableDeclarationsMergeTransformer
  12393. ];
  12394. }
  12395. getVisitor(nodeTransformationStage) {
  12396. switch (nodeTransformationStage) {
  12397. case NodeTransformationStage_1.NodeTransformationStage.Simplifying:
  12398. return {
  12399. leave: (node, parentNode) => {
  12400. if (parentNode && NodeGuards_1.NodeGuards.isBlockStatementNode(node)) {
  12401. return this.transformNode(node, parentNode);
  12402. }
  12403. }
  12404. };
  12405. default:
  12406. return null;
  12407. }
  12408. }
  12409. transformNode(statementNode, parentNode) {
  12410. const simplifyData = this.getStatementSimplifyData(statementNode);
  12411. if (!simplifyData) {
  12412. return statementNode;
  12413. }
  12414. const partialStatementNode = this.getPartialStatement(simplifyData);
  12415. const transformedNode = NodeGuards_1.NodeGuards.isBlockStatementNode(partialStatementNode)
  12416. ? partialStatementNode
  12417. : NodeFactory_1.NodeFactory.blockStatementNode([partialStatementNode]);
  12418. return NodeUtils_1.NodeUtils.parentizeNode(transformedNode, parentNode);
  12419. }
  12420. };
  12421. BlockStatementSimplifyTransformer = __decorate([
  12422. inversify_1.injectable(),
  12423. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  12424. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12425. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  12426. ], BlockStatementSimplifyTransformer);
  12427. exports.BlockStatementSimplifyTransformer = BlockStatementSimplifyTransformer;
  12428. /***/ }),
  12429. /***/ "./src/node-transformers/simplifying-transformers/ExpressionStatementsMergeTransformer.ts":
  12430. /*!************************************************************************************************!*\
  12431. !*** ./src/node-transformers/simplifying-transformers/ExpressionStatementsMergeTransformer.ts ***!
  12432. \************************************************************************************************/
  12433. /*! unknown exports (runtime-defined) */
  12434. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12435. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12436. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  12437. if (k2 === undefined) k2 = k;
  12438. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  12439. }) : (function(o, m, k, k2) {
  12440. if (k2 === undefined) k2 = k;
  12441. o[k2] = m[k];
  12442. }));
  12443. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  12444. Object.defineProperty(o, "default", { enumerable: true, value: v });
  12445. }) : function(o, v) {
  12446. o["default"] = v;
  12447. });
  12448. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12449. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12450. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12451. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12452. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12453. };
  12454. var __importStar = (this && this.__importStar) || function (mod) {
  12455. if (mod && mod.__esModule) return mod;
  12456. var result = {};
  12457. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  12458. __setModuleDefault(result, mod);
  12459. return result;
  12460. };
  12461. var __metadata = (this && this.__metadata) || function (k, v) {
  12462. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12463. };
  12464. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12465. return function (target, key) { decorator(target, key, paramIndex); }
  12466. };
  12467. var _a, _b;
  12468. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12469. exports.ExpressionStatementsMergeTransformer = void 0;
  12470. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12471. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12472. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  12473. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12474. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  12475. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  12476. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  12477. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  12478. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12479. const NodeStatementUtils_1 = __webpack_require__(/*! ../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  12480. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  12481. let ExpressionStatementsMergeTransformer = class ExpressionStatementsMergeTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  12482. constructor(randomGenerator, options) {
  12483. super(randomGenerator, options);
  12484. }
  12485. getVisitor(nodeTransformationStage) {
  12486. switch (nodeTransformationStage) {
  12487. case NodeTransformationStage_1.NodeTransformationStage.Simplifying:
  12488. return {
  12489. leave: (node, parentNode) => {
  12490. if (parentNode && NodeGuards_1.NodeGuards.isExpressionStatementNode(node)) {
  12491. return this.transformNode(node, parentNode);
  12492. }
  12493. }
  12494. };
  12495. default:
  12496. return null;
  12497. }
  12498. }
  12499. transformNode(expressionStatementNode, parentNode) {
  12500. if (!NodeGuards_1.NodeGuards.isNodeWithStatements(parentNode)) {
  12501. return expressionStatementNode;
  12502. }
  12503. const prevStatement = NodeStatementUtils_1.NodeStatementUtils.getPreviousSiblingStatement(expressionStatementNode);
  12504. if (!prevStatement || !NodeGuards_1.NodeGuards.isExpressionStatementNode(prevStatement)) {
  12505. return expressionStatementNode;
  12506. }
  12507. if (NodeGuards_1.NodeGuards.isSequenceExpressionNode(prevStatement.expression)) {
  12508. prevStatement.expression.expressions.push(expressionStatementNode.expression);
  12509. NodeUtils_1.NodeUtils.parentizeNode(expressionStatementNode.expression, prevStatement.expression);
  12510. }
  12511. else {
  12512. prevStatement.expression = NodeFactory_1.NodeFactory.sequenceExpressionNode([
  12513. prevStatement.expression,
  12514. expressionStatementNode.expression
  12515. ]);
  12516. NodeUtils_1.NodeUtils.parentizeAst(prevStatement.expression);
  12517. NodeUtils_1.NodeUtils.parentizeNode(prevStatement.expression, prevStatement);
  12518. }
  12519. return estraverse.VisitorOption.Remove;
  12520. }
  12521. };
  12522. ExpressionStatementsMergeTransformer = __decorate([
  12523. inversify_1.injectable(),
  12524. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  12525. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12526. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  12527. ], ExpressionStatementsMergeTransformer);
  12528. exports.ExpressionStatementsMergeTransformer = ExpressionStatementsMergeTransformer;
  12529. /***/ }),
  12530. /***/ "./src/node-transformers/simplifying-transformers/IfStatementSimplifyTransformer.ts":
  12531. /*!******************************************************************************************!*\
  12532. !*** ./src/node-transformers/simplifying-transformers/IfStatementSimplifyTransformer.ts ***!
  12533. \******************************************************************************************/
  12534. /*! unknown exports (runtime-defined) */
  12535. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12536. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12537. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12538. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12539. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12540. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12541. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12542. };
  12543. var __metadata = (this && this.__metadata) || function (k, v) {
  12544. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12545. };
  12546. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12547. return function (target, key) { decorator(target, key, paramIndex); }
  12548. };
  12549. var _a, _b;
  12550. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12551. exports.IfStatementSimplifyTransformer = void 0;
  12552. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12553. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12554. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12555. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  12556. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  12557. const AbstractStatementSimplifyTransformer_1 = __webpack_require__(/*! ./AbstractStatementSimplifyTransformer */ "./src/node-transformers/simplifying-transformers/AbstractStatementSimplifyTransformer.ts");
  12558. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12559. const NodeFactory_1 = __webpack_require__(/*! ../../node/NodeFactory */ "./src/node/NodeFactory.ts");
  12560. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  12561. let IfStatementSimplifyTransformer = class IfStatementSimplifyTransformer extends AbstractStatementSimplifyTransformer_1.AbstractStatementSimplifyTransformer {
  12562. constructor(randomGenerator, options) {
  12563. super(randomGenerator, options);
  12564. }
  12565. getVisitor(nodeTransformationStage) {
  12566. switch (nodeTransformationStage) {
  12567. case NodeTransformationStage_1.NodeTransformationStage.Simplifying:
  12568. return {
  12569. leave: (node, parentNode) => {
  12570. if (parentNode && NodeGuards_1.NodeGuards.isIfStatementNode(node)) {
  12571. return this.transformNode(node, parentNode);
  12572. }
  12573. }
  12574. };
  12575. default:
  12576. return null;
  12577. }
  12578. }
  12579. transformNode(ifStatementNode, parentNode) {
  12580. const consequentSimplifyData = this.getStatementSimplifyData(ifStatementNode.consequent);
  12581. if (!consequentSimplifyData) {
  12582. return ifStatementNode;
  12583. }
  12584. let transformedNode;
  12585. if (!ifStatementNode.alternate) {
  12586. transformedNode = this.getConsequentNode(ifStatementNode, consequentSimplifyData);
  12587. }
  12588. else {
  12589. const alternateSimplifyData = this.getStatementSimplifyData(ifStatementNode.alternate);
  12590. if (!alternateSimplifyData) {
  12591. return ifStatementNode;
  12592. }
  12593. transformedNode = this.getConsequentAndAlternateNode(ifStatementNode, consequentSimplifyData, alternateSimplifyData);
  12594. }
  12595. return NodeUtils_1.NodeUtils.parentizeNode(transformedNode, parentNode);
  12596. }
  12597. getConsequentNode(ifStatementNode, consequentSimplifyData) {
  12598. if (consequentSimplifyData.leadingStatements.length
  12599. || !consequentSimplifyData.trailingStatement) {
  12600. return NodeFactory_1.NodeFactory.ifStatementNode(ifStatementNode.test, this.getPartialStatement(consequentSimplifyData));
  12601. }
  12602. if (consequentSimplifyData.hasReturnStatement) {
  12603. return NodeFactory_1.NodeFactory.ifStatementNode(ifStatementNode.test, consequentSimplifyData.trailingStatement.statement);
  12604. }
  12605. return NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.logicalExpressionNode('&&', ifStatementNode.test, consequentSimplifyData.trailingStatement.expression));
  12606. }
  12607. getConsequentAndAlternateNode(ifStatementNode, consequentSimplifyData, alternateSimplifyData) {
  12608. if (consequentSimplifyData.leadingStatements.length
  12609. || alternateSimplifyData.leadingStatements.length
  12610. || !consequentSimplifyData.trailingStatement
  12611. || !alternateSimplifyData.trailingStatement) {
  12612. return NodeFactory_1.NodeFactory.ifStatementNode(ifStatementNode.test, this.getPartialStatement(consequentSimplifyData), this.getPartialStatement(alternateSimplifyData));
  12613. }
  12614. if (consequentSimplifyData.hasReturnStatement && alternateSimplifyData.hasReturnStatement) {
  12615. return NodeFactory_1.NodeFactory.returnStatementNode(NodeFactory_1.NodeFactory.conditionalExpressionNode(ifStatementNode.test, consequentSimplifyData.trailingStatement.expression, alternateSimplifyData.trailingStatement.expression));
  12616. }
  12617. if (consequentSimplifyData.hasReturnStatement || alternateSimplifyData.hasReturnStatement) {
  12618. return NodeFactory_1.NodeFactory.ifStatementNode(ifStatementNode.test, consequentSimplifyData.trailingStatement.statement, alternateSimplifyData.trailingStatement.statement);
  12619. }
  12620. return NodeFactory_1.NodeFactory.expressionStatementNode(NodeFactory_1.NodeFactory.conditionalExpressionNode(ifStatementNode.test, consequentSimplifyData.trailingStatement.expression, alternateSimplifyData.trailingStatement.expression));
  12621. }
  12622. getPartialStatement(statementSimplifyData) {
  12623. const partialStatement = super.getPartialStatement(statementSimplifyData);
  12624. if (!NodeGuards_1.NodeGuards.isBlockStatementNode(partialStatement)) {
  12625. return partialStatement;
  12626. }
  12627. return partialStatement.body.length === 1
  12628. && !this.isProhibitedSingleStatementForIfStatementBranch(partialStatement.body[0])
  12629. ? partialStatement.body[0]
  12630. : partialStatement;
  12631. }
  12632. isProhibitedSingleStatementForIfStatementBranch(statement) {
  12633. return NodeGuards_1.NodeGuards.isFunctionDeclarationNode(statement)
  12634. || NodeGuards_1.NodeGuards.isIfStatementNode(statement)
  12635. || (NodeGuards_1.NodeGuards.isVariableDeclarationNode(statement) && statement.kind !== 'var');
  12636. }
  12637. };
  12638. IfStatementSimplifyTransformer = __decorate([
  12639. inversify_1.injectable(),
  12640. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  12641. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12642. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  12643. ], IfStatementSimplifyTransformer);
  12644. exports.IfStatementSimplifyTransformer = IfStatementSimplifyTransformer;
  12645. /***/ }),
  12646. /***/ "./src/node-transformers/simplifying-transformers/VariableDeclarationsMergeTransformer.ts":
  12647. /*!************************************************************************************************!*\
  12648. !*** ./src/node-transformers/simplifying-transformers/VariableDeclarationsMergeTransformer.ts ***!
  12649. \************************************************************************************************/
  12650. /*! unknown exports (runtime-defined) */
  12651. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12652. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12653. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  12654. if (k2 === undefined) k2 = k;
  12655. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  12656. }) : (function(o, m, k, k2) {
  12657. if (k2 === undefined) k2 = k;
  12658. o[k2] = m[k];
  12659. }));
  12660. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  12661. Object.defineProperty(o, "default", { enumerable: true, value: v });
  12662. }) : function(o, v) {
  12663. o["default"] = v;
  12664. });
  12665. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12666. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12667. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12668. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12669. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12670. };
  12671. var __importStar = (this && this.__importStar) || function (mod) {
  12672. if (mod && mod.__esModule) return mod;
  12673. var result = {};
  12674. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  12675. __setModuleDefault(result, mod);
  12676. return result;
  12677. };
  12678. var __metadata = (this && this.__metadata) || function (k, v) {
  12679. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12680. };
  12681. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12682. return function (target, key) { decorator(target, key, paramIndex); }
  12683. };
  12684. var _a, _b;
  12685. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12686. exports.VariableDeclarationsMergeTransformer = void 0;
  12687. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12688. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12689. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  12690. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12691. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  12692. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  12693. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  12694. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12695. const NodeStatementUtils_1 = __webpack_require__(/*! ../../node/NodeStatementUtils */ "./src/node/NodeStatementUtils.ts");
  12696. let VariableDeclarationsMergeTransformer = class VariableDeclarationsMergeTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  12697. constructor(randomGenerator, options) {
  12698. super(randomGenerator, options);
  12699. }
  12700. getVisitor(nodeTransformationStage) {
  12701. switch (nodeTransformationStage) {
  12702. case NodeTransformationStage_1.NodeTransformationStage.Simplifying:
  12703. return {
  12704. leave: (node, parentNode) => {
  12705. if (parentNode && NodeGuards_1.NodeGuards.isVariableDeclarationNode(node)) {
  12706. return this.transformNode(node, parentNode);
  12707. }
  12708. }
  12709. };
  12710. default:
  12711. return null;
  12712. }
  12713. }
  12714. transformNode(variableDeclarationNode, parentNode) {
  12715. if (!NodeGuards_1.NodeGuards.isNodeWithStatements(parentNode)) {
  12716. return variableDeclarationNode;
  12717. }
  12718. const prevStatement = NodeStatementUtils_1.NodeStatementUtils.getPreviousSiblingStatement(variableDeclarationNode);
  12719. if (!prevStatement || !NodeGuards_1.NodeGuards.isVariableDeclarationNode(prevStatement)) {
  12720. return variableDeclarationNode;
  12721. }
  12722. if (variableDeclarationNode.kind !== prevStatement.kind) {
  12723. return variableDeclarationNode;
  12724. }
  12725. prevStatement.declarations.push(...variableDeclarationNode.declarations);
  12726. return estraverse.VisitorOption.Remove;
  12727. }
  12728. };
  12729. VariableDeclarationsMergeTransformer = __decorate([
  12730. inversify_1.injectable(),
  12731. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  12732. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12733. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  12734. ], VariableDeclarationsMergeTransformer);
  12735. exports.VariableDeclarationsMergeTransformer = VariableDeclarationsMergeTransformer;
  12736. /***/ }),
  12737. /***/ "./src/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperTransformer.ts":
  12738. /*!****************************************************************************************************!*\
  12739. !*** ./src/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperTransformer.ts ***!
  12740. \****************************************************************************************************/
  12741. /*! unknown exports (runtime-defined) */
  12742. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12743. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12744. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12745. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12746. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12747. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12748. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12749. };
  12750. var __metadata = (this && this.__metadata) || function (k, v) {
  12751. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12752. };
  12753. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12754. return function (target, key) { decorator(target, key, paramIndex); }
  12755. };
  12756. var _a, _b, _c, _d, _e, _f, _g;
  12757. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12758. exports.StringArrayScopeCallsWrapperTransformer = void 0;
  12759. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12760. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12761. const TStringArrayCustomNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/TStringArrayCustomNodeFactory */ "./src/types/container/custom-nodes/TStringArrayCustomNodeFactory.ts");
  12762. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12763. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  12764. const IStringArrayScopeCallsWrapperLexicalScopeDataStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperLexicalScopeDataStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperLexicalScopeDataStorage.ts");
  12765. const IStringArrayScopeCallsWrapperNamesDataStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperNamesDataStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperNamesDataStorage.ts");
  12766. const IStringArrayStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  12767. const IVisitedLexicalScopeNodesStackStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IVisitedLexicalScopeNodesStackStorage */ "./src/interfaces/storages/string-array-transformers/IVisitedLexicalScopeNodesStackStorage.ts");
  12768. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  12769. const StringArrayCustomNode_1 = __webpack_require__(/*! ../../enums/custom-nodes/StringArrayCustomNode */ "./src/enums/custom-nodes/StringArrayCustomNode.ts");
  12770. const StringArrayWrappersType_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayWrappersType */ "./src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts");
  12771. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  12772. const NodeAppender_1 = __webpack_require__(/*! ../../node/NodeAppender */ "./src/node/NodeAppender.ts");
  12773. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12774. let StringArrayScopeCallsWrapperTransformer = class StringArrayScopeCallsWrapperTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  12775. constructor(randomGenerator, options, visitedLexicalScopeNodesStackStorage, stringArrayStorage, stringArrayScopeCallsWrapperNamesDataStorage, stringArrayScopeCallsWrapperLexicalScopeDataStorage, stringArrayTransformerCustomNodeFactory) {
  12776. super(randomGenerator, options);
  12777. this.visitedLexicalScopeNodesStackStorage = visitedLexicalScopeNodesStackStorage;
  12778. this.stringArrayStorage = stringArrayStorage;
  12779. this.stringArrayScopeCallsWrapperNamesDataStorage = stringArrayScopeCallsWrapperNamesDataStorage;
  12780. this.stringArrayScopeCallsWrapperLexicalScopeDataStorage = stringArrayScopeCallsWrapperLexicalScopeDataStorage;
  12781. this.stringArrayTransformerCustomNodeFactory = stringArrayTransformerCustomNodeFactory;
  12782. }
  12783. getVisitor(nodeTransformationStage) {
  12784. if (!this.options.stringArrayWrappersCount) {
  12785. return null;
  12786. }
  12787. switch (nodeTransformationStage) {
  12788. case NodeTransformationStage_1.NodeTransformationStage.StringArray:
  12789. return {
  12790. enter: (node, parentNode) => {
  12791. if (parentNode && NodeGuards_1.NodeGuards.isNodeWithLexicalScopeStatements(node, parentNode)) {
  12792. this.onLexicalScopeNodeEnter(node);
  12793. }
  12794. },
  12795. leave: (node, parentNode) => {
  12796. if (parentNode && NodeGuards_1.NodeGuards.isNodeWithLexicalScopeStatements(node, parentNode)) {
  12797. this.onLexicalScopeNodeLeave();
  12798. return this.transformNode(node);
  12799. }
  12800. }
  12801. };
  12802. default:
  12803. return null;
  12804. }
  12805. }
  12806. transformNode(lexicalScopeBodyNode) {
  12807. var _a, _b;
  12808. const stringArrayScopeCallsWrapperNamesDataByEncoding = (_a = this.stringArrayScopeCallsWrapperNamesDataStorage.get(lexicalScopeBodyNode)) !== null && _a !== void 0 ? _a : null;
  12809. const stringArrayScopeCallsWrapperLexicalScopeData = (_b = this.stringArrayScopeCallsWrapperLexicalScopeDataStorage.get(lexicalScopeBodyNode)) !== null && _b !== void 0 ? _b : null;
  12810. if (!stringArrayScopeCallsWrapperNamesDataByEncoding || !stringArrayScopeCallsWrapperLexicalScopeData) {
  12811. return lexicalScopeBodyNode;
  12812. }
  12813. const { callsWrappersParameterIndexesData: stringArrayScopeCallsWrapperParameterIndexes } = stringArrayScopeCallsWrapperLexicalScopeData;
  12814. const stringArrayScopeCallsWrapperNamesDataList = Object.values(stringArrayScopeCallsWrapperNamesDataByEncoding);
  12815. for (const stringArrayScopeCallsWrapperNamesData of stringArrayScopeCallsWrapperNamesDataList) {
  12816. if (!stringArrayScopeCallsWrapperNamesData) {
  12817. continue;
  12818. }
  12819. const { names } = stringArrayScopeCallsWrapperNamesData;
  12820. const namesLength = names.length;
  12821. for (let i = namesLength - 1; i >= 0; i--) {
  12822. const stringArrayScopeCallsWrapperName = names[i];
  12823. const { name: upperStringArrayCallsWrapperName, index: upperStringArrayCallsWrapperShiftedIndex, parameterIndexesData: upperStringArrayCallsWrapperParameterIndexes } = this.getUpperStringArrayCallsWrapperData(stringArrayScopeCallsWrapperNamesData, stringArrayScopeCallsWrapperLexicalScopeData);
  12824. const stringArrayScopeCallsWrapperNode = this.getStringArrayScopeCallsWrapperNode(stringArrayScopeCallsWrapperName, stringArrayScopeCallsWrapperParameterIndexes, upperStringArrayCallsWrapperName, upperStringArrayCallsWrapperParameterIndexes, upperStringArrayCallsWrapperShiftedIndex);
  12825. NodeAppender_1.NodeAppender.prepend(lexicalScopeBodyNode, stringArrayScopeCallsWrapperNode);
  12826. }
  12827. }
  12828. return lexicalScopeBodyNode;
  12829. }
  12830. getRootStringArrayCallsWrapperData(stringArrayScopeCallsWrapperNamesData, stringArrayScopeCallsWrapperLexicalScopeData) {
  12831. const { encoding } = stringArrayScopeCallsWrapperNamesData;
  12832. const { resultShiftedIndex } = stringArrayScopeCallsWrapperLexicalScopeData;
  12833. return {
  12834. name: this.stringArrayStorage.getStorageCallsWrapperName(encoding),
  12835. index: resultShiftedIndex,
  12836. parameterIndexesData: null
  12837. };
  12838. }
  12839. getUpperStringArrayCallsWrapperData(stringArrayScopeCallsWrapperNamesData, stringArrayScopeCallsWrapperLexicalScopeData) {
  12840. var _a, _b, _c, _d, _e, _f;
  12841. const { encoding } = stringArrayScopeCallsWrapperNamesData;
  12842. const { scopeShiftedIndex } = stringArrayScopeCallsWrapperLexicalScopeData;
  12843. const rootStringArrayCallsWrapperData = this.getRootStringArrayCallsWrapperData(stringArrayScopeCallsWrapperNamesData, stringArrayScopeCallsWrapperLexicalScopeData);
  12844. if (!this.options.stringArrayWrappersChainedCalls) {
  12845. return rootStringArrayCallsWrapperData;
  12846. }
  12847. const parentLexicalScopeBodyNode = (_a = this.visitedLexicalScopeNodesStackStorage.getLastElement()) !== null && _a !== void 0 ? _a : null;
  12848. if (!parentLexicalScopeBodyNode) {
  12849. return rootStringArrayCallsWrapperData;
  12850. }
  12851. const parentLexicalScopeNamesDataByEncoding = (_b = this.stringArrayScopeCallsWrapperNamesDataStorage
  12852. .get(parentLexicalScopeBodyNode)) !== null && _b !== void 0 ? _b : null;
  12853. const parentScopeCallsWrapperLexicalScopeData = (_c = this.stringArrayScopeCallsWrapperLexicalScopeDataStorage
  12854. .get(parentLexicalScopeBodyNode)) !== null && _c !== void 0 ? _c : null;
  12855. const parentLexicalScopeNames = (_e = (_d = parentLexicalScopeNamesDataByEncoding === null || parentLexicalScopeNamesDataByEncoding === void 0 ? void 0 : parentLexicalScopeNamesDataByEncoding[encoding]) === null || _d === void 0 ? void 0 : _d.names) !== null && _e !== void 0 ? _e : null;
  12856. if (!(parentLexicalScopeNames === null || parentLexicalScopeNames === void 0 ? void 0 : parentLexicalScopeNames.length)) {
  12857. return rootStringArrayCallsWrapperData;
  12858. }
  12859. const upperStringArrayCallsWrapperName = this.randomGenerator
  12860. .getRandomGenerator()
  12861. .pickone(parentLexicalScopeNames);
  12862. const parameterIndexesData = (_f = parentScopeCallsWrapperLexicalScopeData === null || parentScopeCallsWrapperLexicalScopeData === void 0 ? void 0 : parentScopeCallsWrapperLexicalScopeData.callsWrappersParameterIndexesData) !== null && _f !== void 0 ? _f : null;
  12863. return {
  12864. name: upperStringArrayCallsWrapperName,
  12865. index: scopeShiftedIndex,
  12866. parameterIndexesData
  12867. };
  12868. }
  12869. getStringArrayScopeCallsWrapperNode(stringArrayScopeCallsWrapperName, stringArrayScopeCallsWrapperParameterIndexes, upperStringArrayCallsWrapperName, upperStringArrayCallsWrapperParameterIndexes, stringArrayScopeCallsWrapperShiftedIndex) {
  12870. switch (this.options.stringArrayWrappersType) {
  12871. case StringArrayWrappersType_1.StringArrayWrappersType.Function:
  12872. return this.getStringArrayScopeCallsWrapperFunctionNode(stringArrayScopeCallsWrapperName, stringArrayScopeCallsWrapperParameterIndexes, upperStringArrayCallsWrapperName, upperStringArrayCallsWrapperParameterIndexes, stringArrayScopeCallsWrapperShiftedIndex);
  12873. case StringArrayWrappersType_1.StringArrayWrappersType.Variable:
  12874. default:
  12875. return this.getStringArrayScopeCallsWrapperVariableNode(stringArrayScopeCallsWrapperName, upperStringArrayCallsWrapperName);
  12876. }
  12877. }
  12878. getStringArrayScopeCallsWrapperVariableNode(stringArrayScopeCallsWrapperName, upperStringArrayCallsWrapperName) {
  12879. const stringArrayScopeCallsWrapperVariableNode = this.stringArrayTransformerCustomNodeFactory(StringArrayCustomNode_1.StringArrayCustomNode.StringArrayScopeCallsWrapperVariableNode);
  12880. stringArrayScopeCallsWrapperVariableNode.initialize(stringArrayScopeCallsWrapperName, upperStringArrayCallsWrapperName);
  12881. return stringArrayScopeCallsWrapperVariableNode.getNode();
  12882. }
  12883. getStringArrayScopeCallsWrapperFunctionNode(stringArrayScopeCallsWrapperName, stringArrayScopeCallsWrapperParameterIndexes, upperStringArrayCallsWrapperName, upperStringArrayCallsWrapperParameterIndexes, stringArrayScopeCallsWrapperShiftedIndex) {
  12884. const stringArrayScopeCallsWrapperFunctionNode = this.stringArrayTransformerCustomNodeFactory(StringArrayCustomNode_1.StringArrayCustomNode.StringArrayScopeCallsWrapperFunctionNode);
  12885. stringArrayScopeCallsWrapperFunctionNode.initialize(stringArrayScopeCallsWrapperName, stringArrayScopeCallsWrapperParameterIndexes, upperStringArrayCallsWrapperName, upperStringArrayCallsWrapperParameterIndexes, stringArrayScopeCallsWrapperShiftedIndex);
  12886. return stringArrayScopeCallsWrapperFunctionNode.getNode();
  12887. }
  12888. onLexicalScopeNodeEnter(lexicalScopeBodyNode) {
  12889. this.visitedLexicalScopeNodesStackStorage.push(lexicalScopeBodyNode);
  12890. }
  12891. onLexicalScopeNodeLeave() {
  12892. this.visitedLexicalScopeNodesStackStorage.pop();
  12893. }
  12894. };
  12895. StringArrayScopeCallsWrapperTransformer = __decorate([
  12896. inversify_1.injectable(),
  12897. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  12898. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  12899. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IVisitedLexicalScopeNodesStackStorage)),
  12900. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)),
  12901. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayScopeCallsWrapperNamesDataStorage)),
  12902. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayScopeCallsWrapperLexicalScopeDataStorage)),
  12903. __param(6, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayCustomNode)),
  12904. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object, typeof (_c = typeof IVisitedLexicalScopeNodesStackStorage_1.IVisitedLexicalScopeNodesStackStorage !== "undefined" && IVisitedLexicalScopeNodesStackStorage_1.IVisitedLexicalScopeNodesStackStorage) === "function" ? _c : Object, typeof (_d = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _d : Object, typeof (_e = typeof IStringArrayScopeCallsWrapperNamesDataStorage_1.IStringArrayScopeCallsWrapperNamesDataStorage !== "undefined" && IStringArrayScopeCallsWrapperNamesDataStorage_1.IStringArrayScopeCallsWrapperNamesDataStorage) === "function" ? _e : Object, typeof (_f = typeof IStringArrayScopeCallsWrapperLexicalScopeDataStorage_1.IStringArrayScopeCallsWrapperLexicalScopeDataStorage !== "undefined" && IStringArrayScopeCallsWrapperLexicalScopeDataStorage_1.IStringArrayScopeCallsWrapperLexicalScopeDataStorage) === "function" ? _f : Object, typeof (_g = typeof TStringArrayCustomNodeFactory_1.TStringArrayCustomNodeFactory !== "undefined" && TStringArrayCustomNodeFactory_1.TStringArrayCustomNodeFactory) === "function" ? _g : Object])
  12905. ], StringArrayScopeCallsWrapperTransformer);
  12906. exports.StringArrayScopeCallsWrapperTransformer = StringArrayScopeCallsWrapperTransformer;
  12907. /***/ }),
  12908. /***/ "./src/node-transformers/string-array-transformers/StringArrayTransformer.ts":
  12909. /*!***********************************************************************************!*\
  12910. !*** ./src/node-transformers/string-array-transformers/StringArrayTransformer.ts ***!
  12911. \***********************************************************************************/
  12912. /*! unknown exports (runtime-defined) */
  12913. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  12914. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  12915. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  12916. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  12917. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  12918. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  12919. return c > 3 && r && Object.defineProperty(target, key, r), r;
  12920. };
  12921. var __metadata = (this && this.__metadata) || function (k, v) {
  12922. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  12923. };
  12924. var __param = (this && this.__param) || function (paramIndex, decorator) {
  12925. return function (target, key) { decorator(target, key, paramIndex); }
  12926. };
  12927. var StringArrayTransformer_1, _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
  12928. Object.defineProperty(exports, "__esModule", ({ value: true }));
  12929. exports.StringArrayTransformer = void 0;
  12930. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  12931. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  12932. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  12933. const TStringArrayCustomNodeFactory_1 = __webpack_require__(/*! ../../types/container/custom-nodes/TStringArrayCustomNodeFactory */ "./src/types/container/custom-nodes/TStringArrayCustomNodeFactory.ts");
  12934. const ILiteralNodesCacheStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/ILiteralNodesCacheStorage */ "./src/interfaces/storages/string-array-transformers/ILiteralNodesCacheStorage.ts");
  12935. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  12936. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  12937. const IStringArrayScopeCallsWrapperLexicalScopeDataStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperLexicalScopeDataStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperLexicalScopeDataStorage.ts");
  12938. const IStringArrayScopeCallsWrapperNamesDataStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperNamesDataStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrapperNamesDataStorage.ts");
  12939. const IStringArrayStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IStringArrayStorage */ "./src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts");
  12940. const IStringArrayStorageAnalyzer_1 = __webpack_require__(/*! ../../interfaces/analyzers/string-array-storage-analyzer/IStringArrayStorageAnalyzer */ "./src/interfaces/analyzers/string-array-storage-analyzer/IStringArrayStorageAnalyzer.ts");
  12941. const IVisitedLexicalScopeNodesStackStorage_1 = __webpack_require__(/*! ../../interfaces/storages/string-array-transformers/IVisitedLexicalScopeNodesStackStorage */ "./src/interfaces/storages/string-array-transformers/IVisitedLexicalScopeNodesStackStorage.ts");
  12942. const NodeTransformationStage_1 = __webpack_require__(/*! ../../enums/node-transformers/NodeTransformationStage */ "./src/enums/node-transformers/NodeTransformationStage.ts");
  12943. const StringArrayCustomNode_1 = __webpack_require__(/*! ../../enums/custom-nodes/StringArrayCustomNode */ "./src/enums/custom-nodes/StringArrayCustomNode.ts");
  12944. const StringArrayWrappersType_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayWrappersType */ "./src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts");
  12945. const StringArrayScopeCallsWrapperParametersMaxCount_1 = __webpack_require__(/*! ../../constants/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperParametersMaxCount */ "./src/constants/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperParametersMaxCount.ts");
  12946. const AbstractNodeTransformer_1 = __webpack_require__(/*! ../AbstractNodeTransformer */ "./src/node-transformers/AbstractNodeTransformer.ts");
  12947. const NodeGuards_1 = __webpack_require__(/*! ../../node/NodeGuards */ "./src/node/NodeGuards.ts");
  12948. const NodeLiteralUtils_1 = __webpack_require__(/*! ../../node/NodeLiteralUtils */ "./src/node/NodeLiteralUtils.ts");
  12949. const NodeMetadata_1 = __webpack_require__(/*! ../../node/NodeMetadata */ "./src/node/NodeMetadata.ts");
  12950. const NodeUtils_1 = __webpack_require__(/*! ../../node/NodeUtils */ "./src/node/NodeUtils.ts");
  12951. let StringArrayTransformer = StringArrayTransformer_1 = class StringArrayTransformer extends AbstractNodeTransformer_1.AbstractNodeTransformer {
  12952. constructor(randomGenerator, options, literalNodesCacheStorage, visitedLexicalScopeNodesStackStorage, stringArrayStorage, stringArrayScopeCallsWrapperNamesDataStorage, stringArrayScopeCallsWrapperLexicalScopeDataStorage, stringArrayStorageAnalyzer, identifierNamesGeneratorFactory, stringArrayTransformerCustomNodeFactory) {
  12953. super(randomGenerator, options);
  12954. this.literalNodesCacheStorage = literalNodesCacheStorage;
  12955. this.visitedLexicalScopeNodesStackStorage = visitedLexicalScopeNodesStackStorage;
  12956. this.stringArrayStorage = stringArrayStorage;
  12957. this.stringArrayScopeCallsWrapperNamesDataStorage = stringArrayScopeCallsWrapperNamesDataStorage;
  12958. this.stringArrayScopeCallsWrapperLexicalScopeDataStorage = stringArrayScopeCallsWrapperLexicalScopeDataStorage;
  12959. this.stringArrayStorageAnalyzer = stringArrayStorageAnalyzer;
  12960. this.identifierNamesGenerator = identifierNamesGeneratorFactory(options);
  12961. this.stringArrayTransformerCustomNodeFactory = stringArrayTransformerCustomNodeFactory;
  12962. }
  12963. getVisitor(nodeTransformationStage) {
  12964. switch (nodeTransformationStage) {
  12965. case NodeTransformationStage_1.NodeTransformationStage.StringArray:
  12966. return {
  12967. enter: (node, parentNode) => {
  12968. if (NodeGuards_1.NodeGuards.isProgramNode(node)) {
  12969. this.prepareNode(node);
  12970. }
  12971. if (parentNode && NodeGuards_1.NodeGuards.isLiteralNode(node) && !NodeMetadata_1.NodeMetadata.isReplacedLiteral(node)) {
  12972. return this.transformNode(node, parentNode);
  12973. }
  12974. }
  12975. };
  12976. default:
  12977. return null;
  12978. }
  12979. }
  12980. prepareNode(programNode) {
  12981. this.stringArrayStorageAnalyzer.analyze(programNode);
  12982. if (this.options.shuffleStringArray) {
  12983. this.stringArrayStorage.shuffleStorage();
  12984. }
  12985. if (this.options.rotateStringArray) {
  12986. this.stringArrayStorage.rotateStorage();
  12987. }
  12988. }
  12989. transformNode(literalNode, parentNode) {
  12990. if (!NodeLiteralUtils_1.NodeLiteralUtils.isStringLiteralNode(literalNode)
  12991. || NodeLiteralUtils_1.NodeLiteralUtils.isProhibitedLiteralNode(literalNode, parentNode)) {
  12992. return literalNode;
  12993. }
  12994. const literalValue = literalNode.value;
  12995. const stringArrayStorageItemData = this.stringArrayStorageAnalyzer.getItemDataForLiteralNode(literalNode);
  12996. const cacheKey = this.literalNodesCacheStorage.buildKey(literalValue, stringArrayStorageItemData);
  12997. const useCachedValue = this.literalNodesCacheStorage.shouldUseCachedValue(cacheKey, stringArrayStorageItemData);
  12998. if (useCachedValue) {
  12999. return this.literalNodesCacheStorage.get(cacheKey);
  13000. }
  13001. const resultNode = stringArrayStorageItemData
  13002. ? this.getStringArrayCallNode(stringArrayStorageItemData)
  13003. : literalNode;
  13004. this.literalNodesCacheStorage.set(cacheKey, resultNode);
  13005. NodeUtils_1.NodeUtils.parentizeNode(resultNode, parentNode);
  13006. return resultNode;
  13007. }
  13008. getStringArrayCallNode(stringArrayStorageItemData) {
  13009. const { name: stringArrayCallsWrapperName, index, parameterIndexesData } = this.getStringArrayCallsWrapperData(stringArrayStorageItemData);
  13010. const { decodeKey } = stringArrayStorageItemData;
  13011. const stringArrayCallCustomNode = this.stringArrayTransformerCustomNodeFactory(StringArrayCustomNode_1.StringArrayCustomNode.StringArrayCallNode);
  13012. stringArrayCallCustomNode.initialize(stringArrayCallsWrapperName, parameterIndexesData, index, this.stringArrayStorage.getIndexShiftAmount(), decodeKey);
  13013. const statementNode = stringArrayCallCustomNode.getNode()[0];
  13014. if (!NodeGuards_1.NodeGuards.isExpressionStatementNode(statementNode)) {
  13015. throw new Error('`stringArrayCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node');
  13016. }
  13017. return statementNode.expression;
  13018. }
  13019. getStringArrayCallsWrapperData(stringArrayStorageItemData) {
  13020. return !this.options.stringArrayWrappersCount
  13021. ? this.getRootStringArrayCallsWrapperData(stringArrayStorageItemData)
  13022. : this.getUpperStringArrayCallsWrapperData(stringArrayStorageItemData);
  13023. }
  13024. getRootStringArrayCallsWrapperData(stringArrayStorageItemData) {
  13025. const { encoding, index } = stringArrayStorageItemData;
  13026. const rootStringArrayCallsWrapperName = this.stringArrayStorage.getStorageCallsWrapperName(encoding);
  13027. return {
  13028. name: rootStringArrayCallsWrapperName,
  13029. parameterIndexesData: null,
  13030. index
  13031. };
  13032. }
  13033. getUpperStringArrayCallsWrapperData(stringArrayStorageItemData) {
  13034. var _a, _b, _c, _d;
  13035. const { encoding, index } = stringArrayStorageItemData;
  13036. const currentLexicalScopeBodyNode = (_a = this.visitedLexicalScopeNodesStackStorage.getLastElement()) !== null && _a !== void 0 ? _a : null;
  13037. const parentLexicalScopeBodyNode = (_b = this.visitedLexicalScopeNodesStackStorage.getPenultimateElement()) !== null && _b !== void 0 ? _b : null;
  13038. if (!currentLexicalScopeBodyNode) {
  13039. throw new Error('Cannot find current lexical scope body node');
  13040. }
  13041. const stringArrayScopeCallsWrapperNamesDataByEncoding = this.getAndUpdateStringArrayScopeCallsWrapperNamesDataByEncoding(currentLexicalScopeBodyNode, stringArrayStorageItemData);
  13042. const stringArrayScopeCallsWrapperLexicalScopeData = this.getAndUpdateStringArrayScopeCallsWrapperLexicalScopeData(currentLexicalScopeBodyNode, parentLexicalScopeBodyNode);
  13043. const stringArrayScopeCallsWrapperNames = (_d = (_c = stringArrayScopeCallsWrapperNamesDataByEncoding[encoding]) === null || _c === void 0 ? void 0 : _c.names) !== null && _d !== void 0 ? _d : [];
  13044. const randomUpperStringArrayCallsWrapperName = this.randomGenerator
  13045. .getRandomGenerator()
  13046. .pickone(stringArrayScopeCallsWrapperNames);
  13047. const resultIndex = stringArrayScopeCallsWrapperLexicalScopeData
  13048. ? stringArrayScopeCallsWrapperLexicalScopeData.resultShiftedIndex + index
  13049. : index;
  13050. return {
  13051. name: randomUpperStringArrayCallsWrapperName,
  13052. index: resultIndex,
  13053. parameterIndexesData: stringArrayScopeCallsWrapperLexicalScopeData.callsWrappersParameterIndexesData
  13054. };
  13055. }
  13056. getAndUpdateStringArrayScopeCallsWrapperNamesDataByEncoding(currentLexicalScopeBodyNode, stringArrayStorageItemData) {
  13057. var _a, _b, _c;
  13058. const { encoding } = stringArrayStorageItemData;
  13059. const stringArrayScopeCallsWrapperNamesDataByEncoding = (_a = this.stringArrayScopeCallsWrapperNamesDataStorage.get(currentLexicalScopeBodyNode)) !== null && _a !== void 0 ? _a : {};
  13060. const stringArrayScopeCallsWrapperNames = (_c = (_b = stringArrayScopeCallsWrapperNamesDataByEncoding[encoding]) === null || _b === void 0 ? void 0 : _b.names) !== null && _c !== void 0 ? _c : [];
  13061. const isFilledScopeCallsWrapperNamesList = stringArrayScopeCallsWrapperNames.length === this.options.stringArrayWrappersCount;
  13062. if (isFilledScopeCallsWrapperNamesList) {
  13063. return stringArrayScopeCallsWrapperNamesDataByEncoding;
  13064. }
  13065. const nextScopeCallsWrapperName = this.identifierNamesGenerator.generateNext();
  13066. stringArrayScopeCallsWrapperNamesDataByEncoding[encoding] = {
  13067. encoding,
  13068. names: [
  13069. ...stringArrayScopeCallsWrapperNames,
  13070. nextScopeCallsWrapperName
  13071. ]
  13072. };
  13073. this.stringArrayScopeCallsWrapperNamesDataStorage.set(currentLexicalScopeBodyNode, stringArrayScopeCallsWrapperNamesDataByEncoding);
  13074. return stringArrayScopeCallsWrapperNamesDataByEncoding;
  13075. }
  13076. getAndUpdateStringArrayScopeCallsWrapperLexicalScopeData(currentLexicalScopeBodyNode, parentLexicalScopeBodyNode) {
  13077. var _a, _b;
  13078. const storedLexicalScopeData = (_a = this.stringArrayScopeCallsWrapperLexicalScopeDataStorage.get(currentLexicalScopeBodyNode)) !== null && _a !== void 0 ? _a : null;
  13079. if (storedLexicalScopeData) {
  13080. return storedLexicalScopeData;
  13081. }
  13082. const parentLexicalScopeData = parentLexicalScopeBodyNode
  13083. ? (_b = this.stringArrayScopeCallsWrapperLexicalScopeDataStorage.get(parentLexicalScopeBodyNode)) !== null && _b !== void 0 ? _b : null : null;
  13084. const callsWrappersParameterIndexesData = this.options.stringArrayWrappersType === StringArrayWrappersType_1.StringArrayWrappersType.Function
  13085. ? this.getStringArrayCallsWrapperParameterIndexesData()
  13086. : null;
  13087. const scopeShiftedIndex = this.options.stringArrayWrappersType === StringArrayWrappersType_1.StringArrayWrappersType.Function
  13088. ? this.randomGenerator.getRandomInteger(StringArrayTransformer_1.minShiftedIndexValue, StringArrayTransformer_1.maxShiftedIndexValue)
  13089. : 0;
  13090. const resultShiftedIndex = parentLexicalScopeData
  13091. ? parentLexicalScopeData.resultShiftedIndex + scopeShiftedIndex
  13092. : scopeShiftedIndex;
  13093. const lexicalScopeData = {
  13094. callsWrappersParameterIndexesData,
  13095. parentLexicalScopeBodyNode,
  13096. resultShiftedIndex,
  13097. scopeShiftedIndex
  13098. };
  13099. this.stringArrayScopeCallsWrapperLexicalScopeDataStorage.set(currentLexicalScopeBodyNode, lexicalScopeData);
  13100. return lexicalScopeData;
  13101. }
  13102. getStringArrayCallsWrapperParameterIndexesData() {
  13103. const minIndexValue = 0;
  13104. const maxIndexValue = StringArrayScopeCallsWrapperParametersMaxCount_1.stringArrayScopeCallsWrapperParametersMaxCount - 1;
  13105. const index = this.randomGenerator.getRandomInteger(minIndexValue, maxIndexValue);
  13106. const decodeKey = this.randomGenerator.getRandomIntegerExcluding(minIndexValue, maxIndexValue, [index]);
  13107. return {
  13108. index,
  13109. decodeKey
  13110. };
  13111. }
  13112. };
  13113. StringArrayTransformer.minShiftedIndexValue = -1000;
  13114. StringArrayTransformer.maxShiftedIndexValue = 1000;
  13115. StringArrayTransformer = StringArrayTransformer_1 = __decorate([
  13116. inversify_1.injectable(),
  13117. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  13118. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  13119. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ILiteralNodesCacheStorage)),
  13120. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IVisitedLexicalScopeNodesStackStorage)),
  13121. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorage)),
  13122. __param(5, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayScopeCallsWrapperNamesDataStorage)),
  13123. __param(6, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayScopeCallsWrapperLexicalScopeDataStorage)),
  13124. __param(7, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IStringArrayStorageAnalyzer)),
  13125. __param(8, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  13126. __param(9, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IStringArrayCustomNode)),
  13127. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object, typeof (_c = typeof ILiteralNodesCacheStorage_1.ILiteralNodesCacheStorage !== "undefined" && ILiteralNodesCacheStorage_1.ILiteralNodesCacheStorage) === "function" ? _c : Object, typeof (_d = typeof IVisitedLexicalScopeNodesStackStorage_1.IVisitedLexicalScopeNodesStackStorage !== "undefined" && IVisitedLexicalScopeNodesStackStorage_1.IVisitedLexicalScopeNodesStackStorage) === "function" ? _d : Object, typeof (_e = typeof IStringArrayStorage_1.IStringArrayStorage !== "undefined" && IStringArrayStorage_1.IStringArrayStorage) === "function" ? _e : Object, typeof (_f = typeof IStringArrayScopeCallsWrapperNamesDataStorage_1.IStringArrayScopeCallsWrapperNamesDataStorage !== "undefined" && IStringArrayScopeCallsWrapperNamesDataStorage_1.IStringArrayScopeCallsWrapperNamesDataStorage) === "function" ? _f : Object, typeof (_g = typeof IStringArrayScopeCallsWrapperLexicalScopeDataStorage_1.IStringArrayScopeCallsWrapperLexicalScopeDataStorage !== "undefined" && IStringArrayScopeCallsWrapperLexicalScopeDataStorage_1.IStringArrayScopeCallsWrapperLexicalScopeDataStorage) === "function" ? _g : Object, typeof (_h = typeof IStringArrayStorageAnalyzer_1.IStringArrayStorageAnalyzer !== "undefined" && IStringArrayStorageAnalyzer_1.IStringArrayStorageAnalyzer) === "function" ? _h : Object, typeof (_j = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _j : Object, typeof (_k = typeof TStringArrayCustomNodeFactory_1.TStringArrayCustomNodeFactory !== "undefined" && TStringArrayCustomNodeFactory_1.TStringArrayCustomNodeFactory) === "function" ? _k : Object])
  13128. ], StringArrayTransformer);
  13129. exports.StringArrayTransformer = StringArrayTransformer;
  13130. /***/ }),
  13131. /***/ "./src/node/NodeAppender.ts":
  13132. /*!**********************************!*\
  13133. !*** ./src/node/NodeAppender.ts ***!
  13134. \**********************************/
  13135. /*! flagged exports */
  13136. /*! export NodeAppender [provided] [no usage info] [missing usage info prevents renaming] */
  13137. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  13138. /*! other exports [not provided] [no usage info] */
  13139. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  13140. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  13141. Object.defineProperty(exports, "__esModule", ({ value: true }));
  13142. exports.NodeAppender = void 0;
  13143. const NodeGuards_1 = __webpack_require__(/*! ./NodeGuards */ "./src/node/NodeGuards.ts");
  13144. class NodeAppender {
  13145. static append(nodeWithStatements, statements) {
  13146. statements = NodeAppender.parentizeScopeStatementsBeforeAppend(nodeWithStatements, statements);
  13147. NodeAppender.setScopeStatements(nodeWithStatements, [
  13148. ...NodeAppender.getScopeStatements(nodeWithStatements),
  13149. ...statements
  13150. ]);
  13151. }
  13152. static appendToOptimalBlockScope(callsGraphData, nodeWithStatements, bodyStatements, index = 0) {
  13153. const targetBlockScope = callsGraphData.length
  13154. ? NodeAppender.getOptimalBlockScope(callsGraphData, index)
  13155. : nodeWithStatements;
  13156. NodeAppender.prepend(targetBlockScope, bodyStatements);
  13157. }
  13158. static getOptimalBlockScope(callsGraphData, index, deep = Infinity) {
  13159. const firstCall = callsGraphData[index];
  13160. if (deep <= 0) {
  13161. throw new Error('Invalid `deep` argument value. Value should be bigger then 0.');
  13162. }
  13163. if (deep > 1 && firstCall.callsGraph.length) {
  13164. return NodeAppender.getOptimalBlockScope(firstCall.callsGraph, 0, --deep);
  13165. }
  13166. else {
  13167. return firstCall.callee;
  13168. }
  13169. }
  13170. static insertBefore(nodeWithStatements, statements, target) {
  13171. const indexInScopeStatement = NodeAppender
  13172. .getScopeStatements(nodeWithStatements)
  13173. .indexOf(target);
  13174. NodeAppender.insertAtIndex(nodeWithStatements, statements, indexInScopeStatement);
  13175. }
  13176. static insertAfter(nodeWithStatements, statements, target) {
  13177. const indexInScopeStatement = NodeAppender
  13178. .getScopeStatements(nodeWithStatements)
  13179. .indexOf(target);
  13180. NodeAppender.insertAtIndex(nodeWithStatements, statements, indexInScopeStatement + 1);
  13181. }
  13182. static insertAtIndex(nodeWithStatements, statements, index) {
  13183. statements = NodeAppender.parentizeScopeStatementsBeforeAppend(nodeWithStatements, statements);
  13184. NodeAppender.setScopeStatements(nodeWithStatements, [
  13185. ...NodeAppender.getScopeStatements(nodeWithStatements).slice(0, index),
  13186. ...statements,
  13187. ...NodeAppender.getScopeStatements(nodeWithStatements).slice(index)
  13188. ]);
  13189. }
  13190. static prepend(nodeWithStatements, statements) {
  13191. statements = NodeAppender.parentizeScopeStatementsBeforeAppend(nodeWithStatements, statements);
  13192. NodeAppender.setScopeStatements(nodeWithStatements, [
  13193. ...statements,
  13194. ...NodeAppender.getScopeStatements(nodeWithStatements),
  13195. ]);
  13196. }
  13197. static getScopeStatements(nodeWithStatements) {
  13198. if (NodeGuards_1.NodeGuards.isSwitchCaseNode(nodeWithStatements)) {
  13199. return nodeWithStatements.consequent;
  13200. }
  13201. return nodeWithStatements.body;
  13202. }
  13203. static parentizeScopeStatementsBeforeAppend(nodeWithStatements, statements) {
  13204. statements.forEach((statement) => {
  13205. statement.parentNode = nodeWithStatements;
  13206. });
  13207. return statements;
  13208. }
  13209. static setScopeStatements(nodeWithStatements, statements) {
  13210. if (NodeGuards_1.NodeGuards.isSwitchCaseNode(nodeWithStatements)) {
  13211. nodeWithStatements.consequent = statements;
  13212. return;
  13213. }
  13214. nodeWithStatements.body = statements;
  13215. }
  13216. }
  13217. exports.NodeAppender = NodeAppender;
  13218. /***/ }),
  13219. /***/ "./src/node/NodeFactory.ts":
  13220. /*!*********************************!*\
  13221. !*** ./src/node/NodeFactory.ts ***!
  13222. \*********************************/
  13223. /*! unknown exports (runtime-defined) */
  13224. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  13225. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  13226. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  13227. if (k2 === undefined) k2 = k;
  13228. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  13229. }) : (function(o, m, k, k2) {
  13230. if (k2 === undefined) k2 = k;
  13231. o[k2] = m[k];
  13232. }));
  13233. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  13234. Object.defineProperty(o, "default", { enumerable: true, value: v });
  13235. }) : function(o, v) {
  13236. o["default"] = v;
  13237. });
  13238. var __importStar = (this && this.__importStar) || function (mod) {
  13239. if (mod && mod.__esModule) return mod;
  13240. var result = {};
  13241. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  13242. __setModuleDefault(result, mod);
  13243. return result;
  13244. };
  13245. Object.defineProperty(exports, "__esModule", ({ value: true }));
  13246. exports.NodeFactory = void 0;
  13247. const escodegen = __importStar(__webpack_require__(/*! @javascript-obfuscator/escodegen */ "@javascript-obfuscator/escodegen"));
  13248. const NodeType_1 = __webpack_require__(/*! ../enums/node/NodeType */ "./src/enums/node/NodeType.ts");
  13249. class NodeFactory {
  13250. static programNode(body = []) {
  13251. return {
  13252. type: NodeType_1.NodeType.Program,
  13253. body,
  13254. sourceType: 'script',
  13255. metadata: { ignoredNode: false }
  13256. };
  13257. }
  13258. static arrayExpressionNode(elements = []) {
  13259. return {
  13260. type: NodeType_1.NodeType.ArrayExpression,
  13261. elements,
  13262. metadata: { ignoredNode: false }
  13263. };
  13264. }
  13265. static arrowFunctionExpressionNode(params, expression, body) {
  13266. return {
  13267. type: NodeType_1.NodeType.ArrowFunctionExpression,
  13268. params,
  13269. expression,
  13270. body
  13271. };
  13272. }
  13273. static assignmentExpressionNode(operator, left, right) {
  13274. return {
  13275. type: NodeType_1.NodeType.AssignmentExpression,
  13276. operator,
  13277. left,
  13278. right,
  13279. metadata: { ignoredNode: false }
  13280. };
  13281. }
  13282. static binaryExpressionNode(operator, left, right) {
  13283. return {
  13284. type: NodeType_1.NodeType.BinaryExpression,
  13285. operator,
  13286. left,
  13287. right,
  13288. metadata: { ignoredNode: false }
  13289. };
  13290. }
  13291. static blockStatementNode(body = []) {
  13292. return {
  13293. type: NodeType_1.NodeType.BlockStatement,
  13294. body,
  13295. metadata: { ignoredNode: false }
  13296. };
  13297. }
  13298. static breakStatement(label) {
  13299. return {
  13300. type: NodeType_1.NodeType.BreakStatement,
  13301. label,
  13302. metadata: { ignoredNode: false }
  13303. };
  13304. }
  13305. static callExpressionNode(callee, args = [], optional = false) {
  13306. return {
  13307. type: NodeType_1.NodeType.CallExpression,
  13308. callee,
  13309. optional,
  13310. arguments: args,
  13311. metadata: { ignoredNode: false }
  13312. };
  13313. }
  13314. static conditionalExpressionNode(test, consequent, alternate) {
  13315. return {
  13316. type: NodeType_1.NodeType.ConditionalExpression,
  13317. test,
  13318. consequent,
  13319. alternate,
  13320. metadata: { ignoredNode: false }
  13321. };
  13322. }
  13323. static continueStatement(label) {
  13324. return {
  13325. type: NodeType_1.NodeType.ContinueStatement,
  13326. label,
  13327. metadata: { ignoredNode: false }
  13328. };
  13329. }
  13330. static directiveNode(expression, directive) {
  13331. return {
  13332. type: NodeType_1.NodeType.ExpressionStatement,
  13333. expression,
  13334. directive,
  13335. metadata: { ignoredNode: false }
  13336. };
  13337. }
  13338. static exportAllDeclarationNode(source) {
  13339. return {
  13340. type: NodeType_1.NodeType.ExportAllDeclaration,
  13341. source,
  13342. metadata: { ignoredNode: false }
  13343. };
  13344. }
  13345. static exportNamedDeclarationNode(specifiers, source) {
  13346. return {
  13347. type: NodeType_1.NodeType.ExportNamedDeclaration,
  13348. specifiers,
  13349. source,
  13350. metadata: { ignoredNode: false }
  13351. };
  13352. }
  13353. static expressionStatementNode(expression) {
  13354. return {
  13355. type: NodeType_1.NodeType.ExpressionStatement,
  13356. expression,
  13357. metadata: { ignoredNode: false }
  13358. };
  13359. }
  13360. static functionDeclarationNode(functionName, params, body) {
  13361. return {
  13362. type: NodeType_1.NodeType.FunctionDeclaration,
  13363. id: NodeFactory.identifierNode(functionName),
  13364. params,
  13365. body,
  13366. generator: false,
  13367. metadata: { ignoredNode: false }
  13368. };
  13369. }
  13370. static functionExpressionNode(params, body) {
  13371. return {
  13372. type: NodeType_1.NodeType.FunctionExpression,
  13373. params,
  13374. body,
  13375. generator: false,
  13376. metadata: { ignoredNode: false }
  13377. };
  13378. }
  13379. static ifStatementNode(test, consequent, alternate) {
  13380. return Object.assign(Object.assign({ type: NodeType_1.NodeType.IfStatement, test,
  13381. consequent }, alternate && { alternate }), { metadata: { ignoredNode: false } });
  13382. }
  13383. static identifierNode(name) {
  13384. return {
  13385. type: NodeType_1.NodeType.Identifier,
  13386. name,
  13387. metadata: { ignoredNode: false }
  13388. };
  13389. }
  13390. static importDeclarationNode(specifiers, source) {
  13391. return {
  13392. type: NodeType_1.NodeType.ImportDeclaration,
  13393. specifiers,
  13394. source,
  13395. metadata: { ignoredNode: false }
  13396. };
  13397. }
  13398. static literalNode(value, raw) {
  13399. raw = raw !== undefined ? raw : `'${value}'`;
  13400. return {
  13401. type: NodeType_1.NodeType.Literal,
  13402. value,
  13403. raw,
  13404. 'x-verbatim-property': {
  13405. content: raw,
  13406. precedence: escodegen.Precedence.Primary
  13407. },
  13408. metadata: { ignoredNode: false }
  13409. };
  13410. }
  13411. static logicalExpressionNode(operator, left, right) {
  13412. return {
  13413. type: NodeType_1.NodeType.LogicalExpression,
  13414. operator,
  13415. left,
  13416. right,
  13417. metadata: { ignoredNode: false }
  13418. };
  13419. }
  13420. static memberExpressionNode(object, property, computed = false, optional = false) {
  13421. return {
  13422. type: NodeType_1.NodeType.MemberExpression,
  13423. computed,
  13424. object,
  13425. optional,
  13426. property,
  13427. metadata: { ignoredNode: false }
  13428. };
  13429. }
  13430. static objectExpressionNode(properties) {
  13431. return {
  13432. type: NodeType_1.NodeType.ObjectExpression,
  13433. properties,
  13434. metadata: { ignoredNode: false }
  13435. };
  13436. }
  13437. static propertyNode(key, value, computed = false) {
  13438. return {
  13439. type: NodeType_1.NodeType.Property,
  13440. key,
  13441. value,
  13442. kind: 'init',
  13443. method: false,
  13444. shorthand: false,
  13445. computed,
  13446. metadata: { ignoredNode: false }
  13447. };
  13448. }
  13449. static returnStatementNode(argument) {
  13450. return {
  13451. type: NodeType_1.NodeType.ReturnStatement,
  13452. argument,
  13453. metadata: { ignoredNode: false }
  13454. };
  13455. }
  13456. static sequenceExpressionNode(expressions) {
  13457. return {
  13458. type: NodeType_1.NodeType.SequenceExpression,
  13459. expressions,
  13460. metadata: { ignoredNode: false }
  13461. };
  13462. }
  13463. static switchStatementNode(discriminant, cases) {
  13464. return {
  13465. type: NodeType_1.NodeType.SwitchStatement,
  13466. discriminant,
  13467. cases,
  13468. metadata: { ignoredNode: false }
  13469. };
  13470. }
  13471. static switchCaseNode(test, consequent) {
  13472. return {
  13473. type: NodeType_1.NodeType.SwitchCase,
  13474. test,
  13475. consequent,
  13476. metadata: { ignoredNode: false }
  13477. };
  13478. }
  13479. static unaryExpressionNode(operator, argument, prefix = true) {
  13480. return {
  13481. type: NodeType_1.NodeType.UnaryExpression,
  13482. operator,
  13483. argument,
  13484. prefix,
  13485. metadata: { ignoredNode: false }
  13486. };
  13487. }
  13488. static updateExpressionNode(operator, argumentExpr) {
  13489. return {
  13490. type: NodeType_1.NodeType.UpdateExpression,
  13491. operator,
  13492. argument: argumentExpr,
  13493. prefix: false,
  13494. metadata: { ignoredNode: false }
  13495. };
  13496. }
  13497. static templateElement(value, tail) {
  13498. return {
  13499. type: NodeType_1.NodeType.TemplateElement,
  13500. value,
  13501. tail,
  13502. metadata: { ignoredNode: false }
  13503. };
  13504. }
  13505. static templateLiteral(expressions, quasis) {
  13506. return {
  13507. type: NodeType_1.NodeType.TemplateLiteral,
  13508. expressions,
  13509. quasis,
  13510. metadata: { ignoredNode: false }
  13511. };
  13512. }
  13513. static variableDeclarationNode(declarations = [], kind = 'var') {
  13514. return {
  13515. type: NodeType_1.NodeType.VariableDeclaration,
  13516. declarations,
  13517. kind,
  13518. metadata: { ignoredNode: false }
  13519. };
  13520. }
  13521. static variableDeclaratorNode(id, init) {
  13522. return {
  13523. type: NodeType_1.NodeType.VariableDeclarator,
  13524. id,
  13525. init,
  13526. metadata: { ignoredNode: false }
  13527. };
  13528. }
  13529. static whileStatementNode(test, body) {
  13530. return {
  13531. type: NodeType_1.NodeType.WhileStatement,
  13532. test,
  13533. body,
  13534. metadata: { ignoredNode: false }
  13535. };
  13536. }
  13537. }
  13538. exports.NodeFactory = NodeFactory;
  13539. /***/ }),
  13540. /***/ "./src/node/NodeGuards.ts":
  13541. /*!********************************!*\
  13542. !*** ./src/node/NodeGuards.ts ***!
  13543. \********************************/
  13544. /*! flagged exports */
  13545. /*! export NodeGuards [provided] [no usage info] [missing usage info prevents renaming] */
  13546. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  13547. /*! other exports [not provided] [no usage info] */
  13548. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  13549. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  13550. Object.defineProperty(exports, "__esModule", ({ value: true }));
  13551. exports.NodeGuards = void 0;
  13552. const NodeType_1 = __webpack_require__(/*! ../enums/node/NodeType */ "./src/enums/node/NodeType.ts");
  13553. class NodeGuards {
  13554. static isArrayPatternNode(node) {
  13555. return node.type === NodeType_1.NodeType.ArrayPattern;
  13556. }
  13557. static isArrowFunctionExpressionNode(node) {
  13558. return node.type === NodeType_1.NodeType.ArrowFunctionExpression;
  13559. }
  13560. static isAssignmentExpressionNode(node) {
  13561. return node.type === NodeType_1.NodeType.AssignmentExpression;
  13562. }
  13563. static isAssignmentPatternNode(node) {
  13564. return node.type === NodeType_1.NodeType.AssignmentPattern;
  13565. }
  13566. static isAwaitExpressionNode(node) {
  13567. return node.type === NodeType_1.NodeType.AwaitExpression;
  13568. }
  13569. static isBigIntLiteralNode(node) {
  13570. return NodeGuards.isLiteralNode(node) && !!node.bigint;
  13571. }
  13572. static isBlockStatementNode(node) {
  13573. return node.type === NodeType_1.NodeType.BlockStatement;
  13574. }
  13575. static isBreakStatementNode(node) {
  13576. return node.type === NodeType_1.NodeType.BreakStatement;
  13577. }
  13578. static isCallExpressionNode(node) {
  13579. return node.type === NodeType_1.NodeType.CallExpression;
  13580. }
  13581. static isClassDeclarationNode(node) {
  13582. return node.type === NodeType_1.NodeType.ClassDeclaration && node.id !== null;
  13583. }
  13584. static isContinueStatementNode(node) {
  13585. return node.type === NodeType_1.NodeType.ContinueStatement;
  13586. }
  13587. static isDirectiveNode(node) {
  13588. return node.type === NodeType_1.NodeType.ExpressionStatement
  13589. && 'directive' in node;
  13590. }
  13591. static isExportAllDeclarationNode(node) {
  13592. return node.type === NodeType_1.NodeType.ExportAllDeclaration;
  13593. }
  13594. static isExportNamedDeclarationNode(node) {
  13595. return node.type === NodeType_1.NodeType.ExportNamedDeclaration;
  13596. }
  13597. static isExportSpecifierNode(node) {
  13598. return node.type === NodeType_1.NodeType.ExportSpecifier;
  13599. }
  13600. static isExpressionStatementNode(node) {
  13601. return node.type === NodeType_1.NodeType.ExpressionStatement
  13602. && !('directive' in node);
  13603. }
  13604. static isForOfStatementNode(node) {
  13605. return node.type === NodeType_1.NodeType.ForOfStatement;
  13606. }
  13607. static isFunctionNode(node) {
  13608. return NodeGuards.isFunctionDeclarationNode(node) ||
  13609. NodeGuards.isFunctionExpressionNode(node) ||
  13610. NodeGuards.isArrowFunctionExpressionNode(node);
  13611. }
  13612. static isFunctionDeclarationNode(node) {
  13613. return node.type === NodeType_1.NodeType.FunctionDeclaration && node.id !== null;
  13614. }
  13615. static isFunctionExpressionNode(node) {
  13616. return node.type === NodeType_1.NodeType.FunctionExpression;
  13617. }
  13618. static isIdentifierNode(node) {
  13619. return node.type === NodeType_1.NodeType.Identifier;
  13620. }
  13621. static isIfStatementNode(node) {
  13622. return node.type === NodeType_1.NodeType.IfStatement;
  13623. }
  13624. static isImportDeclarationNode(node) {
  13625. return node.type === NodeType_1.NodeType.ImportDeclaration;
  13626. }
  13627. static isImportSpecifierNode(node) {
  13628. return node.type === NodeType_1.NodeType.ImportSpecifier;
  13629. }
  13630. static isLabelIdentifierNode(node, parentNode) {
  13631. const parentNodeIsLabeledStatementNode = NodeGuards.isLabeledStatementNode(parentNode) && parentNode.label === node;
  13632. const parentNodeIsContinueStatementNode = NodeGuards.isContinueStatementNode(parentNode) && parentNode.label === node;
  13633. const parentNodeIsBreakStatementNode = NodeGuards.isBreakStatementNode(parentNode) && parentNode.label === node;
  13634. return parentNodeIsLabeledStatementNode || parentNodeIsContinueStatementNode || parentNodeIsBreakStatementNode;
  13635. }
  13636. static isLabeledStatementNode(node) {
  13637. return node.type === NodeType_1.NodeType.LabeledStatement;
  13638. }
  13639. static isLiteralNode(node) {
  13640. return node.type === NodeType_1.NodeType.Literal;
  13641. }
  13642. static isMemberExpressionNode(node) {
  13643. return node.type === NodeType_1.NodeType.MemberExpression;
  13644. }
  13645. static isMethodDefinitionNode(node) {
  13646. return node.type === NodeType_1.NodeType.MethodDefinition;
  13647. }
  13648. static isNode(object) {
  13649. return object && !object.type !== undefined;
  13650. }
  13651. static isNodeWithLexicalScope(node) {
  13652. return NodeGuards.isProgramNode(node) || NodeGuards.isFunctionNode(node);
  13653. }
  13654. static isNodeWithBlockLexicalScope(node) {
  13655. return NodeGuards.isNodeWithLexicalScope(node) || NodeGuards.isBlockStatementNode(node);
  13656. }
  13657. static isNodeWithLexicalScopeStatements(node, parentNode) {
  13658. return NodeGuards.isProgramNode(node)
  13659. || (NodeGuards.isBlockStatementNode(node) && NodeGuards.nodesWithLexicalStatements.includes(parentNode.type));
  13660. }
  13661. static isNodeWithStatements(node) {
  13662. return NodeGuards.isProgramNode(node)
  13663. || NodeGuards.isBlockStatementNode(node)
  13664. || NodeGuards.isSwitchCaseNode(node);
  13665. }
  13666. static isNodeWithComments(node) {
  13667. return Boolean(node.leadingComments) || Boolean(node.trailingComments);
  13668. }
  13669. static isObjectPatternNode(node) {
  13670. return node.type === NodeType_1.NodeType.ObjectPattern;
  13671. }
  13672. static isObjectExpressionNode(node) {
  13673. return node.type === NodeType_1.NodeType.ObjectExpression;
  13674. }
  13675. static isProgramNode(node) {
  13676. return node.type === NodeType_1.NodeType.Program;
  13677. }
  13678. static isPropertyNode(node) {
  13679. return node.type === NodeType_1.NodeType.Property;
  13680. }
  13681. static isRestElementNode(node) {
  13682. return node.type === NodeType_1.NodeType.RestElement;
  13683. }
  13684. static isReturnStatementNode(node) {
  13685. return node.type === NodeType_1.NodeType.ReturnStatement;
  13686. }
  13687. static isSequenceExpressionNode(node) {
  13688. return node.type === NodeType_1.NodeType.SequenceExpression;
  13689. }
  13690. static isSpreadElementNode(node) {
  13691. return node.type === NodeType_1.NodeType.SpreadElement;
  13692. }
  13693. static isSuperNode(node) {
  13694. return node.type === NodeType_1.NodeType.Super;
  13695. }
  13696. static isSwitchCaseNode(node) {
  13697. return node.type === NodeType_1.NodeType.SwitchCase;
  13698. }
  13699. static isTaggedTemplateExpressionNode(node) {
  13700. return node.type === NodeType_1.NodeType.TaggedTemplateExpression;
  13701. }
  13702. static isTemplateLiteralNode(node) {
  13703. return node.type === NodeType_1.NodeType.TemplateLiteral;
  13704. }
  13705. static isUnaryExpressionNode(node) {
  13706. return node.type === NodeType_1.NodeType.UnaryExpression;
  13707. }
  13708. static isUseStrictOperator(node) {
  13709. return NodeGuards.isDirectiveNode(node)
  13710. && node.directive === 'use strict';
  13711. }
  13712. static isVariableDeclarationNode(node) {
  13713. return node.type === NodeType_1.NodeType.VariableDeclaration;
  13714. }
  13715. static isVariableDeclaratorNode(node) {
  13716. return node.type === NodeType_1.NodeType.VariableDeclarator;
  13717. }
  13718. static isWhileStatementNode(node) {
  13719. return node.type === NodeType_1.NodeType.WhileStatement;
  13720. }
  13721. static isYieldExpressionNode(node) {
  13722. return node.type === NodeType_1.NodeType.YieldExpression;
  13723. }
  13724. }
  13725. exports.NodeGuards = NodeGuards;
  13726. NodeGuards.nodesWithLexicalStatements = [
  13727. NodeType_1.NodeType.ArrowFunctionExpression,
  13728. NodeType_1.NodeType.FunctionDeclaration,
  13729. NodeType_1.NodeType.FunctionExpression,
  13730. NodeType_1.NodeType.MethodDefinition,
  13731. ];
  13732. /***/ }),
  13733. /***/ "./src/node/NodeLexicalScopeUtils.ts":
  13734. /*!*******************************************!*\
  13735. !*** ./src/node/NodeLexicalScopeUtils.ts ***!
  13736. \*******************************************/
  13737. /*! flagged exports */
  13738. /*! export NodeLexicalScopeUtils [provided] [no usage info] [missing usage info prevents renaming] */
  13739. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  13740. /*! other exports [not provided] [no usage info] */
  13741. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  13742. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  13743. Object.defineProperty(exports, "__esModule", ({ value: true }));
  13744. exports.NodeLexicalScopeUtils = void 0;
  13745. const NodeGuards_1 = __webpack_require__(/*! ./NodeGuards */ "./src/node/NodeGuards.ts");
  13746. class NodeLexicalScopeUtils {
  13747. static getLexicalScope(node) {
  13748. return NodeLexicalScopeUtils.getLexicalScopesRecursive(node, 1)[0];
  13749. }
  13750. static getLexicalScopes(node) {
  13751. return NodeLexicalScopeUtils.getLexicalScopesRecursive(node);
  13752. }
  13753. static getLexicalScopesRecursive(node, maxSize = Infinity, nodesWithLexicalScope = [], depth = 0) {
  13754. if (nodesWithLexicalScope.length >= maxSize) {
  13755. return nodesWithLexicalScope;
  13756. }
  13757. const parentNode = node.parentNode;
  13758. if (!parentNode) {
  13759. throw new ReferenceError('`parentNode` property of given node is `undefined`');
  13760. }
  13761. if (NodeGuards_1.NodeGuards.isNodeWithLexicalScope(node)) {
  13762. nodesWithLexicalScope.push(node);
  13763. }
  13764. if (node !== parentNode) {
  13765. return NodeLexicalScopeUtils.getLexicalScopesRecursive(parentNode, maxSize, nodesWithLexicalScope, ++depth);
  13766. }
  13767. return nodesWithLexicalScope;
  13768. }
  13769. }
  13770. exports.NodeLexicalScopeUtils = NodeLexicalScopeUtils;
  13771. /***/ }),
  13772. /***/ "./src/node/NodeLiteralUtils.ts":
  13773. /*!**************************************!*\
  13774. !*** ./src/node/NodeLiteralUtils.ts ***!
  13775. \**************************************/
  13776. /*! flagged exports */
  13777. /*! export NodeLiteralUtils [provided] [no usage info] [missing usage info prevents renaming] */
  13778. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  13779. /*! other exports [not provided] [no usage info] */
  13780. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  13781. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  13782. Object.defineProperty(exports, "__esModule", ({ value: true }));
  13783. exports.NodeLiteralUtils = void 0;
  13784. const NodeGuards_1 = __webpack_require__(/*! ./NodeGuards */ "./src/node/NodeGuards.ts");
  13785. class NodeLiteralUtils {
  13786. static isStringLiteralNode(literalNode) {
  13787. return typeof literalNode.value === 'string';
  13788. }
  13789. static isProhibitedLiteralNode(literalNode, parentNode) {
  13790. if (NodeGuards_1.NodeGuards.isPropertyNode(parentNode) && !parentNode.computed && parentNode.key === literalNode) {
  13791. return true;
  13792. }
  13793. if (NodeGuards_1.NodeGuards.isImportDeclarationNode(parentNode)) {
  13794. return true;
  13795. }
  13796. if (NodeGuards_1.NodeGuards.isExportAllDeclarationNode(parentNode) || NodeGuards_1.NodeGuards.isExportNamedDeclarationNode(parentNode)) {
  13797. return true;
  13798. }
  13799. return false;
  13800. }
  13801. }
  13802. exports.NodeLiteralUtils = NodeLiteralUtils;
  13803. /***/ }),
  13804. /***/ "./src/node/NodeMetadata.ts":
  13805. /*!**********************************!*\
  13806. !*** ./src/node/NodeMetadata.ts ***!
  13807. \**********************************/
  13808. /*! flagged exports */
  13809. /*! export NodeMetadata [provided] [no usage info] [missing usage info prevents renaming] */
  13810. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  13811. /*! other exports [not provided] [no usage info] */
  13812. /*! runtime requirements: __webpack_exports__ */
  13813. /***/ ((__unused_webpack_module, exports) => {
  13814. Object.defineProperty(exports, "__esModule", ({ value: true }));
  13815. exports.NodeMetadata = void 0;
  13816. class NodeMetadata {
  13817. static set(node, metadata) {
  13818. var _a;
  13819. node.metadata = Object.assign((_a = node.metadata) !== null && _a !== void 0 ? _a : {}, metadata);
  13820. }
  13821. static get(node, metadataKey) {
  13822. return node.metadata !== undefined
  13823. ? node.metadata[metadataKey]
  13824. : undefined;
  13825. }
  13826. static isForceTransformNode(node) {
  13827. return NodeMetadata.get(node, 'forceTransformNode') === true;
  13828. }
  13829. static isIgnoredNode(node) {
  13830. return NodeMetadata.get(node, 'ignoredNode') === true;
  13831. }
  13832. static isReplacedLiteral(literalNode) {
  13833. return NodeMetadata.get(literalNode, 'replacedLiteral') === true;
  13834. }
  13835. }
  13836. exports.NodeMetadata = NodeMetadata;
  13837. /***/ }),
  13838. /***/ "./src/node/NodeStatementUtils.ts":
  13839. /*!****************************************!*\
  13840. !*** ./src/node/NodeStatementUtils.ts ***!
  13841. \****************************************/
  13842. /*! flagged exports */
  13843. /*! export NodeStatementUtils [provided] [no usage info] [missing usage info prevents renaming] */
  13844. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  13845. /*! other exports [not provided] [no usage info] */
  13846. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  13847. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  13848. Object.defineProperty(exports, "__esModule", ({ value: true }));
  13849. exports.NodeStatementUtils = void 0;
  13850. const NodeGuards_1 = __webpack_require__(/*! ./NodeGuards */ "./src/node/NodeGuards.ts");
  13851. class NodeStatementUtils {
  13852. static getParentNodeWithStatements(node) {
  13853. return NodeStatementUtils.getParentNodesWithStatementsRecursive(node, 1)[0];
  13854. }
  13855. static getParentNodesWithStatements(node) {
  13856. return NodeStatementUtils.getParentNodesWithStatementsRecursive(node);
  13857. }
  13858. static getNextSiblingStatement(statement) {
  13859. return NodeStatementUtils.getSiblingStatementByOffset(statement, 1);
  13860. }
  13861. static getPreviousSiblingStatement(statement) {
  13862. return NodeStatementUtils.getSiblingStatementByOffset(statement, -1);
  13863. }
  13864. static getRootStatementOfNode(node) {
  13865. if (NodeGuards_1.NodeGuards.isProgramNode(node)) {
  13866. throw new Error('Unable to find root statement for `Program` node');
  13867. }
  13868. const parentNode = node.parentNode;
  13869. if (!parentNode) {
  13870. throw new ReferenceError('`parentNode` property of given node is `undefined`');
  13871. }
  13872. if (!NodeGuards_1.NodeGuards.isNodeWithStatements(parentNode)) {
  13873. return NodeStatementUtils.getRootStatementOfNode(parentNode);
  13874. }
  13875. return node;
  13876. }
  13877. static getScopeOfNode(node) {
  13878. const parentNode = node.parentNode;
  13879. if (!parentNode) {
  13880. throw new ReferenceError('`parentNode` property of given node is `undefined`');
  13881. }
  13882. if (!NodeGuards_1.NodeGuards.isNodeWithStatements(parentNode)) {
  13883. return NodeStatementUtils.getScopeOfNode(parentNode);
  13884. }
  13885. return parentNode;
  13886. }
  13887. static getParentNodesWithStatementsRecursive(node, maxSize = Infinity, nodesWithStatements = [], depth = 0) {
  13888. if (nodesWithStatements.length >= maxSize) {
  13889. return nodesWithStatements;
  13890. }
  13891. const parentNode = node.parentNode;
  13892. if (!parentNode) {
  13893. throw new ReferenceError('`parentNode` property of given node is `undefined`');
  13894. }
  13895. if (NodeGuards_1.NodeGuards.isProgramNode(node) ||
  13896. (NodeGuards_1.NodeGuards.isNodeWithLexicalScopeStatements(node, parentNode) && depth > 0)) {
  13897. nodesWithStatements.push(node);
  13898. }
  13899. if (node !== parentNode) {
  13900. return NodeStatementUtils.getParentNodesWithStatementsRecursive(parentNode, maxSize, nodesWithStatements, ++depth);
  13901. }
  13902. return nodesWithStatements;
  13903. }
  13904. static getSiblingStatementByOffset(statement, offset) {
  13905. const scopeNode = NodeStatementUtils.getScopeOfNode(statement);
  13906. const scopeBody = !NodeGuards_1.NodeGuards.isSwitchCaseNode(scopeNode)
  13907. ? scopeNode.body
  13908. : scopeNode.consequent;
  13909. const indexInScope = scopeBody.indexOf(statement);
  13910. return scopeBody[indexInScope + offset] || null;
  13911. }
  13912. }
  13913. exports.NodeStatementUtils = NodeStatementUtils;
  13914. /***/ }),
  13915. /***/ "./src/node/NodeUtils.ts":
  13916. /*!*******************************!*\
  13917. !*** ./src/node/NodeUtils.ts ***!
  13918. \*******************************/
  13919. /*! unknown exports (runtime-defined) */
  13920. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  13921. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  13922. var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
  13923. if (k2 === undefined) k2 = k;
  13924. Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
  13925. }) : (function(o, m, k, k2) {
  13926. if (k2 === undefined) k2 = k;
  13927. o[k2] = m[k];
  13928. }));
  13929. var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
  13930. Object.defineProperty(o, "default", { enumerable: true, value: v });
  13931. }) : function(o, v) {
  13932. o["default"] = v;
  13933. });
  13934. var __importStar = (this && this.__importStar) || function (mod) {
  13935. if (mod && mod.__esModule) return mod;
  13936. var result = {};
  13937. if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
  13938. __setModuleDefault(result, mod);
  13939. return result;
  13940. };
  13941. Object.defineProperty(exports, "__esModule", ({ value: true }));
  13942. exports.NodeUtils = void 0;
  13943. const escodegen = __importStar(__webpack_require__(/*! @javascript-obfuscator/escodegen */ "@javascript-obfuscator/escodegen"));
  13944. const estraverse = __importStar(__webpack_require__(/*! estraverse */ "estraverse"));
  13945. const EcmaVersion_1 = __webpack_require__(/*! ../constants/EcmaVersion */ "./src/constants/EcmaVersion.ts");
  13946. const ASTParserFacade_1 = __webpack_require__(/*! ../ASTParserFacade */ "./src/ASTParserFacade.ts");
  13947. const NodeGuards_1 = __webpack_require__(/*! ./NodeGuards */ "./src/node/NodeGuards.ts");
  13948. const NodeMetadata_1 = __webpack_require__(/*! ./NodeMetadata */ "./src/node/NodeMetadata.ts");
  13949. class NodeUtils {
  13950. static addXVerbatimPropertyTo(literalNode) {
  13951. literalNode['x-verbatim-property'] = {
  13952. content: literalNode.raw,
  13953. precedence: escodegen.Precedence.Primary
  13954. };
  13955. return literalNode;
  13956. }
  13957. static clone(astTree) {
  13958. return NodeUtils.parentizeAst(NodeUtils.cloneRecursive(astTree));
  13959. }
  13960. static convertCodeToStructure(code) {
  13961. const structure = ASTParserFacade_1.ASTParserFacade.parse(code, {
  13962. ecmaVersion: EcmaVersion_1.ecmaVersion,
  13963. sourceType: 'script'
  13964. });
  13965. estraverse.replace(structure, {
  13966. enter: (node, parentNode) => {
  13967. NodeUtils.parentizeNode(node, parentNode);
  13968. if (NodeGuards_1.NodeGuards.isLiteralNode(node)) {
  13969. NodeUtils.addXVerbatimPropertyTo(node);
  13970. }
  13971. NodeMetadata_1.NodeMetadata.set(node, { ignoredNode: false });
  13972. return node;
  13973. }
  13974. });
  13975. return structure.body;
  13976. }
  13977. static convertStructureToCode(structure) {
  13978. return structure.reduce((code, node) => {
  13979. return code + escodegen.generate(node, {
  13980. sourceMapWithCode: true
  13981. }).code;
  13982. }, '');
  13983. }
  13984. static getUnaryExpressionArgumentNode(unaryExpressionNode) {
  13985. if (NodeGuards_1.NodeGuards.isUnaryExpressionNode(unaryExpressionNode.argument)) {
  13986. return NodeUtils.getUnaryExpressionArgumentNode(unaryExpressionNode.argument);
  13987. }
  13988. return unaryExpressionNode.argument;
  13989. }
  13990. static parentizeAst(astTree) {
  13991. var _a;
  13992. const parentNode = (_a = astTree.parentNode) !== null && _a !== void 0 ? _a : null;
  13993. estraverse.replace(astTree, {
  13994. enter: NodeUtils.parentizeNode
  13995. });
  13996. if (parentNode) {
  13997. astTree.parentNode = parentNode;
  13998. }
  13999. return astTree;
  14000. }
  14001. static parentizeNode(node, parentNode) {
  14002. node.parentNode = parentNode !== null && parentNode !== void 0 ? parentNode : node;
  14003. return node;
  14004. }
  14005. static cloneRecursive(node) {
  14006. if (node === null) {
  14007. return node;
  14008. }
  14009. const copy = {};
  14010. const nodeKeys = Object.keys(node);
  14011. nodeKeys
  14012. .forEach((property) => {
  14013. var _a;
  14014. if (property === 'parentNode') {
  14015. return;
  14016. }
  14017. const value = (_a = node[property]) !== null && _a !== void 0 ? _a : null;
  14018. let clonedValue;
  14019. if (value === null || value instanceof RegExp) {
  14020. clonedValue = value;
  14021. }
  14022. else if (value instanceof Array) {
  14023. clonedValue = value.map(NodeUtils.cloneRecursive);
  14024. }
  14025. else if (typeof value === 'object') {
  14026. clonedValue = NodeUtils.cloneRecursive(value);
  14027. }
  14028. else {
  14029. clonedValue = value;
  14030. }
  14031. copy[property] = clonedValue;
  14032. });
  14033. return copy;
  14034. }
  14035. }
  14036. exports.NodeUtils = NodeUtils;
  14037. /***/ }),
  14038. /***/ "./src/node/ScopeIdentifiersTraverser.ts":
  14039. /*!***********************************************!*\
  14040. !*** ./src/node/ScopeIdentifiersTraverser.ts ***!
  14041. \***********************************************/
  14042. /*! unknown exports (runtime-defined) */
  14043. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  14044. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  14045. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  14046. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  14047. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  14048. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  14049. return c > 3 && r && Object.defineProperty(target, key, r), r;
  14050. };
  14051. var __metadata = (this && this.__metadata) || function (k, v) {
  14052. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  14053. };
  14054. var __param = (this && this.__param) || function (paramIndex, decorator) {
  14055. return function (target, key) { decorator(target, key, paramIndex); }
  14056. };
  14057. var ScopeIdentifiersTraverser_1, _a;
  14058. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14059. exports.ScopeIdentifiersTraverser = void 0;
  14060. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  14061. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  14062. const IScopeAnalyzer_1 = __webpack_require__(/*! ../interfaces/analyzers/scope-analyzer/IScopeAnalyzer */ "./src/interfaces/analyzers/scope-analyzer/IScopeAnalyzer.ts");
  14063. const NodeGuards_1 = __webpack_require__(/*! ./NodeGuards */ "./src/node/NodeGuards.ts");
  14064. let ScopeIdentifiersTraverser = ScopeIdentifiersTraverser_1 = class ScopeIdentifiersTraverser {
  14065. constructor(scopeAnalyzer) {
  14066. this.scopeAnalyzer = scopeAnalyzer;
  14067. }
  14068. traverseScopeIdentifiers(programNode, parentNode, callback) {
  14069. this.scopeAnalyzer.analyze(programNode);
  14070. const globalScope = this.scopeAnalyzer.acquireScope(programNode);
  14071. this.traverseScopeIdentifiersRecursive(globalScope, globalScope, callback);
  14072. }
  14073. traverseScopeThroughIdentifiers(programNode, parentNode, callback) {
  14074. this.scopeAnalyzer.analyze(programNode);
  14075. const globalScope = this.scopeAnalyzer.acquireScope(programNode);
  14076. this.traverseScopeThroughIdentifiersRecursive(globalScope, globalScope, callback);
  14077. }
  14078. traverseScopeIdentifiersRecursive(rootScope, currentScope, callback) {
  14079. const variableScope = currentScope.variableScope;
  14080. const variableLexicalScopeNode = NodeGuards_1.NodeGuards.isNodeWithBlockLexicalScope(variableScope.block)
  14081. ? variableScope.block
  14082. : null;
  14083. const isGlobalDeclaration = ScopeIdentifiersTraverser_1.globalScopeNames.includes(variableScope.type);
  14084. if (!variableLexicalScopeNode) {
  14085. return;
  14086. }
  14087. for (const variable of currentScope.variables) {
  14088. if (variable.name === ScopeIdentifiersTraverser_1.argumentsVariableName) {
  14089. continue;
  14090. }
  14091. const isBubblingDeclaration = variable
  14092. .identifiers
  14093. .some((identifier) => identifier.parentNode
  14094. && NodeGuards_1.NodeGuards.isPropertyNode(identifier.parentNode)
  14095. && identifier.parentNode.shorthand);
  14096. callback({
  14097. isGlobalDeclaration,
  14098. isBubblingDeclaration,
  14099. rootScope,
  14100. variable,
  14101. variableScope,
  14102. variableLexicalScopeNode
  14103. });
  14104. }
  14105. for (const childScope of currentScope.childScopes) {
  14106. this.traverseScopeIdentifiersRecursive(rootScope, childScope, callback);
  14107. }
  14108. }
  14109. traverseScopeThroughIdentifiersRecursive(rootScope, currentScope, callback) {
  14110. const variableScope = currentScope.variableScope;
  14111. const variableLexicalScopeNode = NodeGuards_1.NodeGuards.isNodeWithBlockLexicalScope(variableScope.block)
  14112. ? variableScope.block
  14113. : null;
  14114. if (!variableLexicalScopeNode) {
  14115. return;
  14116. }
  14117. for (const reference of currentScope.through) {
  14118. callback({
  14119. reference,
  14120. variableLexicalScopeNode
  14121. });
  14122. }
  14123. for (const childScope of currentScope.childScopes) {
  14124. this.traverseScopeThroughIdentifiersRecursive(rootScope, childScope, callback);
  14125. }
  14126. }
  14127. };
  14128. ScopeIdentifiersTraverser.argumentsVariableName = 'arguments';
  14129. ScopeIdentifiersTraverser.globalScopeNames = [
  14130. 'global',
  14131. 'module'
  14132. ];
  14133. ScopeIdentifiersTraverser = ScopeIdentifiersTraverser_1 = __decorate([
  14134. inversify_1.injectable(),
  14135. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IScopeAnalyzer)),
  14136. __metadata("design:paramtypes", [typeof (_a = typeof IScopeAnalyzer_1.IScopeAnalyzer !== "undefined" && IScopeAnalyzer_1.IScopeAnalyzer) === "function" ? _a : Object])
  14137. ], ScopeIdentifiersTraverser);
  14138. exports.ScopeIdentifiersTraverser = ScopeIdentifiersTraverser;
  14139. /***/ }),
  14140. /***/ "./src/options/Options.ts":
  14141. /*!********************************!*\
  14142. !*** ./src/options/Options.ts ***!
  14143. \********************************/
  14144. /*! unknown exports (runtime-defined) */
  14145. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  14146. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  14147. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  14148. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  14149. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  14150. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  14151. return c > 3 && r && Object.defineProperty(target, key, r), r;
  14152. };
  14153. var __metadata = (this && this.__metadata) || function (k, v) {
  14154. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  14155. };
  14156. var __param = (this && this.__param) || function (paramIndex, decorator) {
  14157. return function (target, key) { decorator(target, key, paramIndex); }
  14158. };
  14159. var Options_1, _a, _b, _c, _d, _e, _f, _g;
  14160. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14161. exports.Options = void 0;
  14162. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  14163. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  14164. const class_validator_1 = __webpack_require__(/*! class-validator */ "class-validator");
  14165. const TInputOptions_1 = __webpack_require__(/*! ../types/options/TInputOptions */ "./src/types/options/TInputOptions.ts");
  14166. const TOptionsPreset_1 = __webpack_require__(/*! ../types/options/TOptionsPreset */ "./src/types/options/TOptionsPreset.ts");
  14167. const TStringArrayWrappersType_1 = __webpack_require__(/*! ../types/options/TStringArrayWrappersType */ "./src/types/options/TStringArrayWrappersType.ts");
  14168. const TTypeFromEnum_1 = __webpack_require__(/*! ../types/utils/TTypeFromEnum */ "./src/types/utils/TTypeFromEnum.ts");
  14169. const IOptionsNormalizer_1 = __webpack_require__(/*! ../interfaces/options/IOptionsNormalizer */ "./src/interfaces/options/IOptionsNormalizer.ts");
  14170. const IdentifierNamesGenerator_1 = __webpack_require__(/*! ../enums/generators/identifier-names-generators/IdentifierNamesGenerator */ "./src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts");
  14171. const ObfuscationTarget_1 = __webpack_require__(/*! ../enums/ObfuscationTarget */ "./src/enums/ObfuscationTarget.ts");
  14172. const OptionsPreset_1 = __webpack_require__(/*! ../enums/options/presets/OptionsPreset */ "./src/enums/options/presets/OptionsPreset.ts");
  14173. const SourceMapMode_1 = __webpack_require__(/*! ../enums/source-map/SourceMapMode */ "./src/enums/source-map/SourceMapMode.ts");
  14174. const StringArrayIndexesType_1 = __webpack_require__(/*! ../enums/node-transformers/string-array-transformers/StringArrayIndexesType */ "./src/enums/node-transformers/string-array-transformers/StringArrayIndexesType.ts");
  14175. const StringArrayEncoding_1 = __webpack_require__(/*! ../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  14176. const StringArrayWrappersType_1 = __webpack_require__(/*! ../enums/node-transformers/string-array-transformers/StringArrayWrappersType */ "./src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts");
  14177. const Default_1 = __webpack_require__(/*! ./presets/Default */ "./src/options/presets/Default.ts");
  14178. const LowObfuscation_1 = __webpack_require__(/*! ./presets/LowObfuscation */ "./src/options/presets/LowObfuscation.ts");
  14179. const MediumObfuscation_1 = __webpack_require__(/*! ./presets/MediumObfuscation */ "./src/options/presets/MediumObfuscation.ts");
  14180. const HighObfuscation_1 = __webpack_require__(/*! ./presets/HighObfuscation */ "./src/options/presets/HighObfuscation.ts");
  14181. const ValidationErrorsFormatter_1 = __webpack_require__(/*! ./ValidationErrorsFormatter */ "./src/options/ValidationErrorsFormatter.ts");
  14182. const IsAllowedForObfuscationTargets_1 = __webpack_require__(/*! ./validators/IsAllowedForObfuscationTargets */ "./src/options/validators/IsAllowedForObfuscationTargets.ts");
  14183. let Options = Options_1 = class Options {
  14184. constructor(inputOptions, optionsNormalizer) {
  14185. var _a;
  14186. const optionsPreset = Options_1.getOptionsByPreset((_a = inputOptions.optionsPreset) !== null && _a !== void 0 ? _a : OptionsPreset_1.OptionsPreset.Default);
  14187. Object.assign(this, optionsPreset, inputOptions);
  14188. const errors = class_validator_1.validateSync(this, Options_1.validatorOptions);
  14189. if (errors.length) {
  14190. throw new ReferenceError(`Validation failed. errors:\n${ValidationErrorsFormatter_1.ValidationErrorsFormatter.format(errors)}`);
  14191. }
  14192. Object.assign(this, optionsNormalizer.normalize(this));
  14193. }
  14194. static getOptionsByPreset(optionsPreset) {
  14195. var _a;
  14196. const options = (_a = Options_1.optionPresetsMap.get(optionsPreset)) !== null && _a !== void 0 ? _a : null;
  14197. if (!options) {
  14198. throw new Error(`Options for preset name \`${optionsPreset}\` are not found`);
  14199. }
  14200. return options;
  14201. }
  14202. };
  14203. Options.optionPresetsMap = new Map([
  14204. [OptionsPreset_1.OptionsPreset.Default, Default_1.DEFAULT_PRESET],
  14205. [OptionsPreset_1.OptionsPreset.LowObfuscation, LowObfuscation_1.LOW_OBFUSCATION_PRESET],
  14206. [OptionsPreset_1.OptionsPreset.MediumObfuscation, MediumObfuscation_1.MEDIUM_OBFUSCATION_PRESET],
  14207. [OptionsPreset_1.OptionsPreset.HighObfuscation, HighObfuscation_1.HIGH_OBFUSCATION_PRESET]
  14208. ]);
  14209. Options.validatorOptions = {
  14210. validationError: {
  14211. target: false
  14212. }
  14213. };
  14214. __decorate([
  14215. class_validator_1.IsBoolean(),
  14216. __metadata("design:type", Boolean)
  14217. ], Options.prototype, "compact", void 0);
  14218. __decorate([
  14219. class_validator_1.IsBoolean(),
  14220. __metadata("design:type", Boolean)
  14221. ], Options.prototype, "controlFlowFlattening", void 0);
  14222. __decorate([
  14223. class_validator_1.IsNumber(),
  14224. class_validator_1.Min(0),
  14225. class_validator_1.Max(1),
  14226. __metadata("design:type", Number)
  14227. ], Options.prototype, "controlFlowFlatteningThreshold", void 0);
  14228. __decorate([
  14229. class_validator_1.IsBoolean(),
  14230. __metadata("design:type", Boolean)
  14231. ], Options.prototype, "deadCodeInjection", void 0);
  14232. __decorate([
  14233. class_validator_1.IsNumber(),
  14234. __metadata("design:type", Number)
  14235. ], Options.prototype, "deadCodeInjectionThreshold", void 0);
  14236. __decorate([
  14237. class_validator_1.IsBoolean(),
  14238. __metadata("design:type", Boolean)
  14239. ], Options.prototype, "debugProtection", void 0);
  14240. __decorate([
  14241. class_validator_1.IsBoolean(),
  14242. __metadata("design:type", Boolean)
  14243. ], Options.prototype, "debugProtectionInterval", void 0);
  14244. __decorate([
  14245. class_validator_1.IsBoolean(),
  14246. __metadata("design:type", Boolean)
  14247. ], Options.prototype, "disableConsoleOutput", void 0);
  14248. __decorate([
  14249. class_validator_1.IsArray(),
  14250. class_validator_1.ArrayUnique(),
  14251. class_validator_1.IsString({
  14252. each: true
  14253. }),
  14254. IsAllowedForObfuscationTargets_1.IsAllowedForObfuscationTargets([
  14255. ObfuscationTarget_1.ObfuscationTarget.Browser,
  14256. ObfuscationTarget_1.ObfuscationTarget.BrowserNoEval,
  14257. ]),
  14258. __metadata("design:type", Array)
  14259. ], Options.prototype, "domainLock", void 0);
  14260. __decorate([
  14261. class_validator_1.IsArray(),
  14262. class_validator_1.ArrayUnique(),
  14263. class_validator_1.IsString({
  14264. each: true
  14265. }),
  14266. __metadata("design:type", Array)
  14267. ], Options.prototype, "forceTransformStrings", void 0);
  14268. __decorate([
  14269. class_validator_1.IsIn([
  14270. IdentifierNamesGenerator_1.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,
  14271. IdentifierNamesGenerator_1.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,
  14272. IdentifierNamesGenerator_1.IdentifierNamesGenerator.MangledIdentifierNamesGenerator,
  14273. IdentifierNamesGenerator_1.IdentifierNamesGenerator.MangledShuffledIdentifierNamesGenerator
  14274. ]),
  14275. __metadata("design:type", typeof (_a = typeof TTypeFromEnum_1.TTypeFromEnum !== "undefined" && TTypeFromEnum_1.TTypeFromEnum) === "function" ? _a : Object)
  14276. ], Options.prototype, "identifierNamesGenerator", void 0);
  14277. __decorate([
  14278. class_validator_1.IsString(),
  14279. __metadata("design:type", String)
  14280. ], Options.prototype, "identifiersPrefix", void 0);
  14281. __decorate([
  14282. class_validator_1.IsArray(),
  14283. class_validator_1.ArrayUnique(),
  14284. class_validator_1.IsString({
  14285. each: true
  14286. }),
  14287. class_validator_1.ValidateIf((options) => options.identifierNamesGenerator === IdentifierNamesGenerator_1.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),
  14288. class_validator_1.ArrayNotEmpty(),
  14289. __metadata("design:type", Array)
  14290. ], Options.prototype, "identifiersDictionary", void 0);
  14291. __decorate([
  14292. class_validator_1.IsBoolean(),
  14293. __metadata("design:type", Boolean)
  14294. ], Options.prototype, "ignoreRequireImports", void 0);
  14295. __decorate([
  14296. class_validator_1.IsString(),
  14297. __metadata("design:type", String)
  14298. ], Options.prototype, "inputFileName", void 0);
  14299. __decorate([
  14300. class_validator_1.IsBoolean(),
  14301. __metadata("design:type", Boolean)
  14302. ], Options.prototype, "log", void 0);
  14303. __decorate([
  14304. class_validator_1.IsBoolean(),
  14305. __metadata("design:type", Boolean)
  14306. ], Options.prototype, "numbersToExpressions", void 0);
  14307. __decorate([
  14308. class_validator_1.IsIn([
  14309. OptionsPreset_1.OptionsPreset.Default,
  14310. OptionsPreset_1.OptionsPreset.LowObfuscation,
  14311. OptionsPreset_1.OptionsPreset.MediumObfuscation,
  14312. OptionsPreset_1.OptionsPreset.HighObfuscation
  14313. ]),
  14314. __metadata("design:type", typeof (_b = typeof TOptionsPreset_1.TOptionsPreset !== "undefined" && TOptionsPreset_1.TOptionsPreset) === "function" ? _b : Object)
  14315. ], Options.prototype, "optionsPreset", void 0);
  14316. __decorate([
  14317. class_validator_1.IsBoolean(),
  14318. __metadata("design:type", Boolean)
  14319. ], Options.prototype, "renameGlobals", void 0);
  14320. __decorate([
  14321. class_validator_1.IsBoolean(),
  14322. __metadata("design:type", Boolean)
  14323. ], Options.prototype, "renameProperties", void 0);
  14324. __decorate([
  14325. class_validator_1.IsArray(),
  14326. class_validator_1.ArrayUnique(),
  14327. class_validator_1.IsString({
  14328. each: true
  14329. }),
  14330. __metadata("design:type", Array)
  14331. ], Options.prototype, "reservedNames", void 0);
  14332. __decorate([
  14333. class_validator_1.IsArray(),
  14334. class_validator_1.ArrayUnique(),
  14335. class_validator_1.IsString({
  14336. each: true
  14337. }),
  14338. __metadata("design:type", Array)
  14339. ], Options.prototype, "reservedStrings", void 0);
  14340. __decorate([
  14341. class_validator_1.IsBoolean(),
  14342. __metadata("design:type", Boolean)
  14343. ], Options.prototype, "rotateStringArray", void 0);
  14344. __decorate([
  14345. class_validator_1.IsBoolean(),
  14346. __metadata("design:type", Boolean)
  14347. ], Options.prototype, "selfDefending", void 0);
  14348. __decorate([
  14349. class_validator_1.IsBoolean(),
  14350. __metadata("design:type", Boolean)
  14351. ], Options.prototype, "shuffleStringArray", void 0);
  14352. __decorate([
  14353. class_validator_1.IsBoolean(),
  14354. __metadata("design:type", Boolean)
  14355. ], Options.prototype, "simplify", void 0);
  14356. __decorate([
  14357. class_validator_1.IsBoolean(),
  14358. __metadata("design:type", Boolean)
  14359. ], Options.prototype, "sourceMap", void 0);
  14360. __decorate([
  14361. class_validator_1.IsString(),
  14362. class_validator_1.ValidateIf((options) => Boolean(options.sourceMapBaseUrl)),
  14363. class_validator_1.IsUrl({
  14364. require_protocol: true,
  14365. require_tld: false,
  14366. require_valid_protocol: true
  14367. }),
  14368. __metadata("design:type", String)
  14369. ], Options.prototype, "sourceMapBaseUrl", void 0);
  14370. __decorate([
  14371. class_validator_1.IsString(),
  14372. __metadata("design:type", String)
  14373. ], Options.prototype, "sourceMapFileName", void 0);
  14374. __decorate([
  14375. class_validator_1.IsIn([SourceMapMode_1.SourceMapMode.Inline, SourceMapMode_1.SourceMapMode.Separate]),
  14376. __metadata("design:type", typeof (_c = typeof TTypeFromEnum_1.TTypeFromEnum !== "undefined" && TTypeFromEnum_1.TTypeFromEnum) === "function" ? _c : Object)
  14377. ], Options.prototype, "sourceMapMode", void 0);
  14378. __decorate([
  14379. class_validator_1.IsBoolean(),
  14380. __metadata("design:type", Boolean)
  14381. ], Options.prototype, "splitStrings", void 0);
  14382. __decorate([
  14383. class_validator_1.IsNumber(),
  14384. class_validator_1.ValidateIf((options) => Boolean(options.splitStrings)),
  14385. class_validator_1.Min(1),
  14386. __metadata("design:type", Number)
  14387. ], Options.prototype, "splitStringsChunkLength", void 0);
  14388. __decorate([
  14389. class_validator_1.IsBoolean(),
  14390. __metadata("design:type", Boolean)
  14391. ], Options.prototype, "stringArray", void 0);
  14392. __decorate([
  14393. class_validator_1.IsArray(),
  14394. class_validator_1.ArrayUnique(),
  14395. class_validator_1.IsIn([StringArrayEncoding_1.StringArrayEncoding.None, StringArrayEncoding_1.StringArrayEncoding.Base64, StringArrayEncoding_1.StringArrayEncoding.Rc4], { each: true }),
  14396. __metadata("design:type", Array)
  14397. ], Options.prototype, "stringArrayEncoding", void 0);
  14398. __decorate([
  14399. class_validator_1.IsArray(),
  14400. class_validator_1.ArrayNotEmpty(),
  14401. class_validator_1.ArrayUnique(),
  14402. class_validator_1.IsIn([StringArrayIndexesType_1.StringArrayIndexesType.HexadecimalNumber, StringArrayIndexesType_1.StringArrayIndexesType.HexadecimalNumericString], { each: true }),
  14403. __metadata("design:type", Array)
  14404. ], Options.prototype, "stringArrayIndexesType", void 0);
  14405. __decorate([
  14406. class_validator_1.IsBoolean(),
  14407. __metadata("design:type", Boolean)
  14408. ], Options.prototype, "stringArrayIndexShift", void 0);
  14409. __decorate([
  14410. class_validator_1.IsBoolean(),
  14411. __metadata("design:type", Boolean)
  14412. ], Options.prototype, "stringArrayWrappersChainedCalls", void 0);
  14413. __decorate([
  14414. class_validator_1.IsNumber(),
  14415. class_validator_1.Min(0),
  14416. __metadata("design:type", Number)
  14417. ], Options.prototype, "stringArrayWrappersCount", void 0);
  14418. __decorate([
  14419. class_validator_1.IsIn([StringArrayWrappersType_1.StringArrayWrappersType.Variable, StringArrayWrappersType_1.StringArrayWrappersType.Function]),
  14420. __metadata("design:type", typeof (_d = typeof TStringArrayWrappersType_1.TStringArrayWrappersType !== "undefined" && TStringArrayWrappersType_1.TStringArrayWrappersType) === "function" ? _d : Object)
  14421. ], Options.prototype, "stringArrayWrappersType", void 0);
  14422. __decorate([
  14423. class_validator_1.IsNumber(),
  14424. class_validator_1.Min(0),
  14425. class_validator_1.Max(1),
  14426. __metadata("design:type", Number)
  14427. ], Options.prototype, "stringArrayThreshold", void 0);
  14428. __decorate([
  14429. class_validator_1.IsIn([ObfuscationTarget_1.ObfuscationTarget.Browser, ObfuscationTarget_1.ObfuscationTarget.BrowserNoEval, ObfuscationTarget_1.ObfuscationTarget.Node]),
  14430. __metadata("design:type", typeof (_e = typeof TTypeFromEnum_1.TTypeFromEnum !== "undefined" && TTypeFromEnum_1.TTypeFromEnum) === "function" ? _e : Object)
  14431. ], Options.prototype, "target", void 0);
  14432. __decorate([
  14433. class_validator_1.IsBoolean(),
  14434. __metadata("design:type", Boolean)
  14435. ], Options.prototype, "transformObjectKeys", void 0);
  14436. __decorate([
  14437. class_validator_1.IsBoolean(),
  14438. __metadata("design:type", Boolean)
  14439. ], Options.prototype, "unicodeEscapeSequence", void 0);
  14440. Options = Options_1 = __decorate([
  14441. inversify_1.injectable(),
  14442. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.TInputOptions)),
  14443. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptionsNormalizer)),
  14444. __metadata("design:paramtypes", [typeof (_f = typeof TInputOptions_1.TInputOptions !== "undefined" && TInputOptions_1.TInputOptions) === "function" ? _f : Object, typeof (_g = typeof IOptionsNormalizer_1.IOptionsNormalizer !== "undefined" && IOptionsNormalizer_1.IOptionsNormalizer) === "function" ? _g : Object])
  14445. ], Options);
  14446. exports.Options = Options;
  14447. /***/ }),
  14448. /***/ "./src/options/OptionsNormalizer.ts":
  14449. /*!******************************************!*\
  14450. !*** ./src/options/OptionsNormalizer.ts ***!
  14451. \******************************************/
  14452. /*! unknown exports (runtime-defined) */
  14453. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  14454. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  14455. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  14456. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  14457. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  14458. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  14459. return c > 3 && r && Object.defineProperty(target, key, r), r;
  14460. };
  14461. var OptionsNormalizer_1;
  14462. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14463. exports.OptionsNormalizer = void 0;
  14464. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  14465. const ControlFlowFlatteningThresholdRule_1 = __webpack_require__(/*! ./normalizer-rules/ControlFlowFlatteningThresholdRule */ "./src/options/normalizer-rules/ControlFlowFlatteningThresholdRule.ts");
  14466. const DeadCodeInjectionRule_1 = __webpack_require__(/*! ./normalizer-rules/DeadCodeInjectionRule */ "./src/options/normalizer-rules/DeadCodeInjectionRule.ts");
  14467. const DeadCodeInjectionThresholdRule_1 = __webpack_require__(/*! ./normalizer-rules/DeadCodeInjectionThresholdRule */ "./src/options/normalizer-rules/DeadCodeInjectionThresholdRule.ts");
  14468. const DomainLockRule_1 = __webpack_require__(/*! ./normalizer-rules/DomainLockRule */ "./src/options/normalizer-rules/DomainLockRule.ts");
  14469. const InputFileNameRule_1 = __webpack_require__(/*! ./normalizer-rules/InputFileNameRule */ "./src/options/normalizer-rules/InputFileNameRule.ts");
  14470. const SeedRule_1 = __webpack_require__(/*! ./normalizer-rules/SeedRule */ "./src/options/normalizer-rules/SeedRule.ts");
  14471. const SelfDefendingRule_1 = __webpack_require__(/*! ./normalizer-rules/SelfDefendingRule */ "./src/options/normalizer-rules/SelfDefendingRule.ts");
  14472. const SourceMapBaseUrlRule_1 = __webpack_require__(/*! ./normalizer-rules/SourceMapBaseUrlRule */ "./src/options/normalizer-rules/SourceMapBaseUrlRule.ts");
  14473. const SourceMapFileNameRule_1 = __webpack_require__(/*! ./normalizer-rules/SourceMapFileNameRule */ "./src/options/normalizer-rules/SourceMapFileNameRule.ts");
  14474. const SplitStringsChunkLengthRule_1 = __webpack_require__(/*! ./normalizer-rules/SplitStringsChunkLengthRule */ "./src/options/normalizer-rules/SplitStringsChunkLengthRule.ts");
  14475. const StringArrayRule_1 = __webpack_require__(/*! ./normalizer-rules/StringArrayRule */ "./src/options/normalizer-rules/StringArrayRule.ts");
  14476. const StringArrayEncodingRule_1 = __webpack_require__(/*! ./normalizer-rules/StringArrayEncodingRule */ "./src/options/normalizer-rules/StringArrayEncodingRule.ts");
  14477. const StringArrayWappersChainedCalls_1 = __webpack_require__(/*! ./normalizer-rules/StringArrayWappersChainedCalls */ "./src/options/normalizer-rules/StringArrayWappersChainedCalls.ts");
  14478. let OptionsNormalizer = OptionsNormalizer_1 = class OptionsNormalizer {
  14479. normalize(options) {
  14480. let normalizedOptions = Object.assign({}, options);
  14481. for (const normalizerRule of OptionsNormalizer_1.normalizerRules) {
  14482. normalizedOptions = normalizerRule(normalizedOptions);
  14483. }
  14484. return normalizedOptions;
  14485. }
  14486. };
  14487. OptionsNormalizer.normalizerRules = [
  14488. ControlFlowFlatteningThresholdRule_1.ControlFlowFlatteningThresholdRule,
  14489. DeadCodeInjectionRule_1.DeadCodeInjectionRule,
  14490. DeadCodeInjectionThresholdRule_1.DeadCodeInjectionThresholdRule,
  14491. DomainLockRule_1.DomainLockRule,
  14492. InputFileNameRule_1.InputFileNameRule,
  14493. SeedRule_1.SeedRule,
  14494. SelfDefendingRule_1.SelfDefendingRule,
  14495. SourceMapBaseUrlRule_1.SourceMapBaseUrlRule,
  14496. SourceMapFileNameRule_1.SourceMapFileNameRule,
  14497. SplitStringsChunkLengthRule_1.SplitStringsChunkLengthRule,
  14498. StringArrayRule_1.StringArrayRule,
  14499. StringArrayEncodingRule_1.StringArrayEncodingRule,
  14500. StringArrayWappersChainedCalls_1.StringArrayWrappersChainedCallsRule,
  14501. ];
  14502. OptionsNormalizer = OptionsNormalizer_1 = __decorate([
  14503. inversify_1.injectable()
  14504. ], OptionsNormalizer);
  14505. exports.OptionsNormalizer = OptionsNormalizer;
  14506. /***/ }),
  14507. /***/ "./src/options/ValidationErrorsFormatter.ts":
  14508. /*!**************************************************!*\
  14509. !*** ./src/options/ValidationErrorsFormatter.ts ***!
  14510. \**************************************************/
  14511. /*! flagged exports */
  14512. /*! export ValidationErrorsFormatter [provided] [no usage info] [missing usage info prevents renaming] */
  14513. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14514. /*! other exports [not provided] [no usage info] */
  14515. /*! runtime requirements: __webpack_exports__ */
  14516. /***/ ((__unused_webpack_module, exports) => {
  14517. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14518. exports.ValidationErrorsFormatter = void 0;
  14519. class ValidationErrorsFormatter {
  14520. static format(errors) {
  14521. return errors
  14522. .reduce((errorMessages, error) => [
  14523. ...errorMessages,
  14524. ValidationErrorsFormatter.formatWithNestedConstraints(error)
  14525. ], [])
  14526. .join('\n');
  14527. }
  14528. static formatWithNestedConstraints(error) {
  14529. const constraints = error.constraints;
  14530. if (!constraints) {
  14531. return `\`${error.property}\` error\n`;
  14532. }
  14533. const rootError = `\`${error.property}\` errors:\n`;
  14534. const nestedErrors = Object
  14535. .keys(constraints)
  14536. .map((constraint) => ` - ${constraints[constraint]}\n`)
  14537. .join();
  14538. return `${rootError}${nestedErrors}`;
  14539. }
  14540. }
  14541. exports.ValidationErrorsFormatter = ValidationErrorsFormatter;
  14542. /***/ }),
  14543. /***/ "./src/options/normalizer-rules/ControlFlowFlatteningThresholdRule.ts":
  14544. /*!****************************************************************************!*\
  14545. !*** ./src/options/normalizer-rules/ControlFlowFlatteningThresholdRule.ts ***!
  14546. \****************************************************************************/
  14547. /*! flagged exports */
  14548. /*! export ControlFlowFlatteningThresholdRule [provided] [no usage info] [missing usage info prevents renaming] */
  14549. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14550. /*! other exports [not provided] [no usage info] */
  14551. /*! runtime requirements: __webpack_exports__ */
  14552. /***/ ((__unused_webpack_module, exports) => {
  14553. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14554. exports.ControlFlowFlatteningThresholdRule = void 0;
  14555. const ControlFlowFlatteningThresholdRule = (options) => {
  14556. if (options.controlFlowFlatteningThreshold === 0) {
  14557. options = Object.assign(Object.assign({}, options), { controlFlowFlattening: false, controlFlowFlatteningThreshold: 0 });
  14558. }
  14559. return options;
  14560. };
  14561. exports.ControlFlowFlatteningThresholdRule = ControlFlowFlatteningThresholdRule;
  14562. /***/ }),
  14563. /***/ "./src/options/normalizer-rules/DeadCodeInjectionRule.ts":
  14564. /*!***************************************************************!*\
  14565. !*** ./src/options/normalizer-rules/DeadCodeInjectionRule.ts ***!
  14566. \***************************************************************/
  14567. /*! flagged exports */
  14568. /*! export DeadCodeInjectionRule [provided] [no usage info] [missing usage info prevents renaming] */
  14569. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14570. /*! other exports [not provided] [no usage info] */
  14571. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14572. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14573. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14574. exports.DeadCodeInjectionRule = void 0;
  14575. const Default_1 = __webpack_require__(/*! ../presets/Default */ "./src/options/presets/Default.ts");
  14576. const DeadCodeInjectionRule = (options) => {
  14577. if (options.deadCodeInjection) {
  14578. options = Object.assign(Object.assign({}, options), { deadCodeInjection: true, stringArray: true });
  14579. if (!options.stringArrayThreshold) {
  14580. options = Object.assign(Object.assign({}, options), { stringArray: true, stringArrayThreshold: Default_1.DEFAULT_PRESET.stringArrayThreshold });
  14581. }
  14582. }
  14583. return options;
  14584. };
  14585. exports.DeadCodeInjectionRule = DeadCodeInjectionRule;
  14586. /***/ }),
  14587. /***/ "./src/options/normalizer-rules/DeadCodeInjectionThresholdRule.ts":
  14588. /*!************************************************************************!*\
  14589. !*** ./src/options/normalizer-rules/DeadCodeInjectionThresholdRule.ts ***!
  14590. \************************************************************************/
  14591. /*! flagged exports */
  14592. /*! export DeadCodeInjectionThresholdRule [provided] [no usage info] [missing usage info prevents renaming] */
  14593. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14594. /*! other exports [not provided] [no usage info] */
  14595. /*! runtime requirements: __webpack_exports__ */
  14596. /***/ ((__unused_webpack_module, exports) => {
  14597. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14598. exports.DeadCodeInjectionThresholdRule = void 0;
  14599. const DeadCodeInjectionThresholdRule = (options) => {
  14600. if (options.deadCodeInjectionThreshold === 0) {
  14601. options = Object.assign(Object.assign({}, options), { deadCodeInjection: false, deadCodeInjectionThreshold: 0 });
  14602. }
  14603. return options;
  14604. };
  14605. exports.DeadCodeInjectionThresholdRule = DeadCodeInjectionThresholdRule;
  14606. /***/ }),
  14607. /***/ "./src/options/normalizer-rules/DomainLockRule.ts":
  14608. /*!********************************************************!*\
  14609. !*** ./src/options/normalizer-rules/DomainLockRule.ts ***!
  14610. \********************************************************/
  14611. /*! flagged exports */
  14612. /*! export DomainLockRule [provided] [no usage info] [missing usage info prevents renaming] */
  14613. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14614. /*! other exports [not provided] [no usage info] */
  14615. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14616. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14617. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14618. exports.DomainLockRule = void 0;
  14619. const Utils_1 = __webpack_require__(/*! ../../utils/Utils */ "./src/utils/Utils.ts");
  14620. const DomainLockRule = (options) => {
  14621. if (options.domainLock.length) {
  14622. const normalizedDomains = [];
  14623. for (const domain of options.domainLock) {
  14624. normalizedDomains.push(Utils_1.Utils.extractDomainFrom(domain));
  14625. }
  14626. options = Object.assign(Object.assign({}, options), { domainLock: normalizedDomains });
  14627. }
  14628. return options;
  14629. };
  14630. exports.DomainLockRule = DomainLockRule;
  14631. /***/ }),
  14632. /***/ "./src/options/normalizer-rules/InputFileNameRule.ts":
  14633. /*!***********************************************************!*\
  14634. !*** ./src/options/normalizer-rules/InputFileNameRule.ts ***!
  14635. \***********************************************************/
  14636. /*! flagged exports */
  14637. /*! export InputFileNameRule [provided] [no usage info] [missing usage info prevents renaming] */
  14638. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14639. /*! other exports [not provided] [no usage info] */
  14640. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14641. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14642. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14643. exports.InputFileNameRule = void 0;
  14644. const StringSeparator_1 = __webpack_require__(/*! ../../enums/StringSeparator */ "./src/enums/StringSeparator.ts");
  14645. const InputFileNameRule = (options) => {
  14646. let { inputFileName } = options;
  14647. if (inputFileName) {
  14648. inputFileName = inputFileName
  14649. .replace(/^\/+/, '')
  14650. .split(StringSeparator_1.StringSeparator.Dot)
  14651. .slice(0, -1)
  14652. .join(StringSeparator_1.StringSeparator.Dot) || inputFileName;
  14653. options = Object.assign(Object.assign({}, options), { inputFileName: `${inputFileName}.js` });
  14654. }
  14655. return options;
  14656. };
  14657. exports.InputFileNameRule = InputFileNameRule;
  14658. /***/ }),
  14659. /***/ "./src/options/normalizer-rules/SeedRule.ts":
  14660. /*!**************************************************!*\
  14661. !*** ./src/options/normalizer-rules/SeedRule.ts ***!
  14662. \**************************************************/
  14663. /*! flagged exports */
  14664. /*! export SeedRule [provided] [no usage info] [missing usage info prevents renaming] */
  14665. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14666. /*! other exports [not provided] [no usage info] */
  14667. /*! runtime requirements: __webpack_exports__ */
  14668. /***/ ((__unused_webpack_module, exports) => {
  14669. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14670. exports.SeedRule = void 0;
  14671. const SeedRule = (options) => {
  14672. if (options.seed) {
  14673. return Object.assign(Object.assign({}, options), { seed: options.seed });
  14674. }
  14675. const getRandomInteger = (min, max) => {
  14676. return Math.floor(Math.random() * (max - min + 1) + min);
  14677. };
  14678. return Object.assign(Object.assign({}, options), { seed: getRandomInteger(0, 999999999) });
  14679. };
  14680. exports.SeedRule = SeedRule;
  14681. /***/ }),
  14682. /***/ "./src/options/normalizer-rules/SelfDefendingRule.ts":
  14683. /*!***********************************************************!*\
  14684. !*** ./src/options/normalizer-rules/SelfDefendingRule.ts ***!
  14685. \***********************************************************/
  14686. /*! flagged exports */
  14687. /*! export SelfDefendingRule [provided] [no usage info] [missing usage info prevents renaming] */
  14688. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14689. /*! other exports [not provided] [no usage info] */
  14690. /*! runtime requirements: __webpack_exports__ */
  14691. /***/ ((__unused_webpack_module, exports) => {
  14692. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14693. exports.SelfDefendingRule = void 0;
  14694. const SelfDefendingRule = (options) => {
  14695. if (options.selfDefending) {
  14696. options = Object.assign(Object.assign({}, options), { compact: true, selfDefending: true });
  14697. }
  14698. return options;
  14699. };
  14700. exports.SelfDefendingRule = SelfDefendingRule;
  14701. /***/ }),
  14702. /***/ "./src/options/normalizer-rules/SourceMapBaseUrlRule.ts":
  14703. /*!**************************************************************!*\
  14704. !*** ./src/options/normalizer-rules/SourceMapBaseUrlRule.ts ***!
  14705. \**************************************************************/
  14706. /*! flagged exports */
  14707. /*! export SourceMapBaseUrlRule [provided] [no usage info] [missing usage info prevents renaming] */
  14708. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14709. /*! other exports [not provided] [no usage info] */
  14710. /*! runtime requirements: __webpack_exports__ */
  14711. /***/ ((__unused_webpack_module, exports) => {
  14712. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14713. exports.SourceMapBaseUrlRule = void 0;
  14714. const SourceMapBaseUrlRule = (options) => {
  14715. const { sourceMapBaseUrl } = options;
  14716. if (!options.sourceMapFileName) {
  14717. options = Object.assign(Object.assign({}, options), { sourceMapBaseUrl: '' });
  14718. return options;
  14719. }
  14720. if (sourceMapBaseUrl && !sourceMapBaseUrl.endsWith('/')) {
  14721. options = Object.assign(Object.assign({}, options), { sourceMapBaseUrl: `${sourceMapBaseUrl}/` });
  14722. }
  14723. return options;
  14724. };
  14725. exports.SourceMapBaseUrlRule = SourceMapBaseUrlRule;
  14726. /***/ }),
  14727. /***/ "./src/options/normalizer-rules/SourceMapFileNameRule.ts":
  14728. /*!***************************************************************!*\
  14729. !*** ./src/options/normalizer-rules/SourceMapFileNameRule.ts ***!
  14730. \***************************************************************/
  14731. /*! flagged exports */
  14732. /*! export SourceMapFileNameRule [provided] [no usage info] [missing usage info prevents renaming] */
  14733. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14734. /*! other exports [not provided] [no usage info] */
  14735. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14736. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14737. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14738. exports.SourceMapFileNameRule = void 0;
  14739. const StringSeparator_1 = __webpack_require__(/*! ../../enums/StringSeparator */ "./src/enums/StringSeparator.ts");
  14740. const SourceMapFileNameRule = (options) => {
  14741. let { sourceMapFileName } = options;
  14742. if (sourceMapFileName) {
  14743. sourceMapFileName = sourceMapFileName
  14744. .replace(/^\/+/, '')
  14745. .replace(/(?:\.js)?(?:\.map)?$/, '');
  14746. let sourceMapFileNameParts = sourceMapFileName.split(StringSeparator_1.StringSeparator.Dot);
  14747. const sourceMapFileNamePartsCount = sourceMapFileNameParts.length;
  14748. const lastPart = sourceMapFileNameParts[sourceMapFileNamePartsCount - 1];
  14749. if (sourceMapFileNamePartsCount > 1 && lastPart.length <= 3) {
  14750. sourceMapFileNameParts = sourceMapFileNameParts.slice(0, -1);
  14751. }
  14752. sourceMapFileName = sourceMapFileNameParts.join(StringSeparator_1.StringSeparator.Dot);
  14753. options = Object.assign(Object.assign({}, options), { sourceMapFileName: `${sourceMapFileName}.js.map` });
  14754. }
  14755. return options;
  14756. };
  14757. exports.SourceMapFileNameRule = SourceMapFileNameRule;
  14758. /***/ }),
  14759. /***/ "./src/options/normalizer-rules/SplitStringsChunkLengthRule.ts":
  14760. /*!*********************************************************************!*\
  14761. !*** ./src/options/normalizer-rules/SplitStringsChunkLengthRule.ts ***!
  14762. \*********************************************************************/
  14763. /*! flagged exports */
  14764. /*! export SplitStringsChunkLengthRule [provided] [no usage info] [missing usage info prevents renaming] */
  14765. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14766. /*! other exports [not provided] [no usage info] */
  14767. /*! runtime requirements: __webpack_exports__ */
  14768. /***/ ((__unused_webpack_module, exports) => {
  14769. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14770. exports.SplitStringsChunkLengthRule = void 0;
  14771. const SplitStringsChunkLengthRule = (options) => {
  14772. if (options.splitStringsChunkLength === 0) {
  14773. options = Object.assign(Object.assign({}, options), { splitStrings: false, splitStringsChunkLength: 0 });
  14774. }
  14775. else {
  14776. options = Object.assign(Object.assign({}, options), { splitStringsChunkLength: Math.floor(options.splitStringsChunkLength) });
  14777. }
  14778. return options;
  14779. };
  14780. exports.SplitStringsChunkLengthRule = SplitStringsChunkLengthRule;
  14781. /***/ }),
  14782. /***/ "./src/options/normalizer-rules/StringArrayEncodingRule.ts":
  14783. /*!*****************************************************************!*\
  14784. !*** ./src/options/normalizer-rules/StringArrayEncodingRule.ts ***!
  14785. \*****************************************************************/
  14786. /*! flagged exports */
  14787. /*! export StringArrayEncodingRule [provided] [no usage info] [missing usage info prevents renaming] */
  14788. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14789. /*! other exports [not provided] [no usage info] */
  14790. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14791. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14792. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14793. exports.StringArrayEncodingRule = void 0;
  14794. const StringArrayEncoding_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  14795. const StringArrayEncodingRule = (options) => {
  14796. if (!options.stringArrayEncoding.length) {
  14797. options = Object.assign(Object.assign({}, options), { stringArrayEncoding: [
  14798. StringArrayEncoding_1.StringArrayEncoding.None
  14799. ] });
  14800. }
  14801. return options;
  14802. };
  14803. exports.StringArrayEncodingRule = StringArrayEncodingRule;
  14804. /***/ }),
  14805. /***/ "./src/options/normalizer-rules/StringArrayRule.ts":
  14806. /*!*********************************************************!*\
  14807. !*** ./src/options/normalizer-rules/StringArrayRule.ts ***!
  14808. \*********************************************************/
  14809. /*! flagged exports */
  14810. /*! export StringArrayRule [provided] [no usage info] [missing usage info prevents renaming] */
  14811. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14812. /*! other exports [not provided] [no usage info] */
  14813. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14814. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14815. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14816. exports.StringArrayRule = void 0;
  14817. const StringArrayEncoding_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  14818. const StringArrayRule = (options) => {
  14819. if (!options.stringArray) {
  14820. options = Object.assign(Object.assign({}, options), { rotateStringArray: false, shuffleStringArray: false, stringArray: false, stringArrayEncoding: [
  14821. StringArrayEncoding_1.StringArrayEncoding.None
  14822. ], stringArrayIndexShift: false, stringArrayWrappersChainedCalls: false, stringArrayWrappersCount: 0, stringArrayThreshold: 0 });
  14823. }
  14824. return options;
  14825. };
  14826. exports.StringArrayRule = StringArrayRule;
  14827. /***/ }),
  14828. /***/ "./src/options/normalizer-rules/StringArrayWappersChainedCalls.ts":
  14829. /*!************************************************************************!*\
  14830. !*** ./src/options/normalizer-rules/StringArrayWappersChainedCalls.ts ***!
  14831. \************************************************************************/
  14832. /*! flagged exports */
  14833. /*! export StringArrayWrappersChainedCallsRule [provided] [no usage info] [missing usage info prevents renaming] */
  14834. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14835. /*! other exports [not provided] [no usage info] */
  14836. /*! runtime requirements: __webpack_exports__ */
  14837. /***/ ((__unused_webpack_module, exports) => {
  14838. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14839. exports.StringArrayWrappersChainedCallsRule = void 0;
  14840. const StringArrayWrappersChainedCallsRule = (options) => {
  14841. if (options.stringArrayWrappersCount === 0) {
  14842. options = Object.assign(Object.assign({}, options), { stringArrayWrappersChainedCalls: false, stringArrayWrappersCount: 0 });
  14843. }
  14844. return options;
  14845. };
  14846. exports.StringArrayWrappersChainedCallsRule = StringArrayWrappersChainedCallsRule;
  14847. /***/ }),
  14848. /***/ "./src/options/presets/Default.ts":
  14849. /*!****************************************!*\
  14850. !*** ./src/options/presets/Default.ts ***!
  14851. \****************************************/
  14852. /*! flagged exports */
  14853. /*! export DEFAULT_PRESET [provided] [no usage info] [missing usage info prevents renaming] */
  14854. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14855. /*! other exports [not provided] [no usage info] */
  14856. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14857. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14858. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14859. exports.DEFAULT_PRESET = void 0;
  14860. const IdentifierNamesGenerator_1 = __webpack_require__(/*! ../../enums/generators/identifier-names-generators/IdentifierNamesGenerator */ "./src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts");
  14861. const ObfuscationTarget_1 = __webpack_require__(/*! ../../enums/ObfuscationTarget */ "./src/enums/ObfuscationTarget.ts");
  14862. const OptionsPreset_1 = __webpack_require__(/*! ../../enums/options/presets/OptionsPreset */ "./src/enums/options/presets/OptionsPreset.ts");
  14863. const SourceMapMode_1 = __webpack_require__(/*! ../../enums/source-map/SourceMapMode */ "./src/enums/source-map/SourceMapMode.ts");
  14864. const StringArrayIndexesType_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayIndexesType */ "./src/enums/node-transformers/string-array-transformers/StringArrayIndexesType.ts");
  14865. const StringArrayEncoding_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  14866. const StringArrayWrappersType_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayWrappersType */ "./src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts");
  14867. exports.DEFAULT_PRESET = Object.freeze({
  14868. compact: true,
  14869. config: '',
  14870. controlFlowFlattening: false,
  14871. controlFlowFlatteningThreshold: 0.75,
  14872. deadCodeInjection: false,
  14873. deadCodeInjectionThreshold: 0.4,
  14874. debugProtection: false,
  14875. debugProtectionInterval: false,
  14876. disableConsoleOutput: false,
  14877. domainLock: [],
  14878. exclude: [],
  14879. forceTransformStrings: [],
  14880. identifierNamesGenerator: IdentifierNamesGenerator_1.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,
  14881. identifiersPrefix: '',
  14882. identifiersDictionary: [],
  14883. ignoreRequireImports: false,
  14884. inputFileName: '',
  14885. log: false,
  14886. numbersToExpressions: false,
  14887. optionsPreset: OptionsPreset_1.OptionsPreset.Default,
  14888. renameGlobals: false,
  14889. renameProperties: false,
  14890. reservedNames: [],
  14891. reservedStrings: [],
  14892. rotateStringArray: true,
  14893. seed: 0,
  14894. selfDefending: false,
  14895. shuffleStringArray: true,
  14896. simplify: true,
  14897. sourceMap: false,
  14898. sourceMapBaseUrl: '',
  14899. sourceMapFileName: '',
  14900. sourceMapMode: SourceMapMode_1.SourceMapMode.Separate,
  14901. splitStrings: false,
  14902. splitStringsChunkLength: 10,
  14903. stringArray: true,
  14904. stringArrayEncoding: [
  14905. StringArrayEncoding_1.StringArrayEncoding.None
  14906. ],
  14907. stringArrayIndexesType: [
  14908. StringArrayIndexesType_1.StringArrayIndexesType.HexadecimalNumber
  14909. ],
  14910. stringArrayIndexShift: true,
  14911. stringArrayWrappersChainedCalls: true,
  14912. stringArrayWrappersCount: 1,
  14913. stringArrayWrappersType: StringArrayWrappersType_1.StringArrayWrappersType.Variable,
  14914. stringArrayThreshold: 0.75,
  14915. target: ObfuscationTarget_1.ObfuscationTarget.Browser,
  14916. transformObjectKeys: false,
  14917. unicodeEscapeSequence: false
  14918. });
  14919. /***/ }),
  14920. /***/ "./src/options/presets/HighObfuscation.ts":
  14921. /*!************************************************!*\
  14922. !*** ./src/options/presets/HighObfuscation.ts ***!
  14923. \************************************************/
  14924. /*! flagged exports */
  14925. /*! export HIGH_OBFUSCATION_PRESET [provided] [no usage info] [missing usage info prevents renaming] */
  14926. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14927. /*! other exports [not provided] [no usage info] */
  14928. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14929. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14930. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14931. exports.HIGH_OBFUSCATION_PRESET = void 0;
  14932. const OptionsPreset_1 = __webpack_require__(/*! ../../enums/options/presets/OptionsPreset */ "./src/enums/options/presets/OptionsPreset.ts");
  14933. const StringArrayEncoding_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  14934. const StringArrayWrappersType_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayWrappersType */ "./src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts");
  14935. const MediumObfuscation_1 = __webpack_require__(/*! ./MediumObfuscation */ "./src/options/presets/MediumObfuscation.ts");
  14936. exports.HIGH_OBFUSCATION_PRESET = Object.freeze(Object.assign(Object.assign({}, MediumObfuscation_1.MEDIUM_OBFUSCATION_PRESET), { controlFlowFlatteningThreshold: 1, deadCodeInjectionThreshold: 1, debugProtection: true, debugProtectionInterval: true, optionsPreset: OptionsPreset_1.OptionsPreset.HighObfuscation, splitStringsChunkLength: 5, stringArrayEncoding: [
  14937. StringArrayEncoding_1.StringArrayEncoding.Rc4
  14938. ], stringArrayWrappersCount: 5, stringArrayWrappersType: StringArrayWrappersType_1.StringArrayWrappersType.Function, stringArrayThreshold: 1 }));
  14939. /***/ }),
  14940. /***/ "./src/options/presets/LowObfuscation.ts":
  14941. /*!***********************************************!*\
  14942. !*** ./src/options/presets/LowObfuscation.ts ***!
  14943. \***********************************************/
  14944. /*! flagged exports */
  14945. /*! export LOW_OBFUSCATION_PRESET [provided] [no usage info] [missing usage info prevents renaming] */
  14946. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14947. /*! other exports [not provided] [no usage info] */
  14948. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14949. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14950. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14951. exports.LOW_OBFUSCATION_PRESET = void 0;
  14952. const OptionsPreset_1 = __webpack_require__(/*! ../../enums/options/presets/OptionsPreset */ "./src/enums/options/presets/OptionsPreset.ts");
  14953. const Default_1 = __webpack_require__(/*! ./Default */ "./src/options/presets/Default.ts");
  14954. exports.LOW_OBFUSCATION_PRESET = Object.freeze(Object.assign(Object.assign({}, Default_1.DEFAULT_PRESET), { disableConsoleOutput: true, optionsPreset: OptionsPreset_1.OptionsPreset.LowObfuscation, rotateStringArray: true, selfDefending: true, shuffleStringArray: true, simplify: true }));
  14955. /***/ }),
  14956. /***/ "./src/options/presets/MediumObfuscation.ts":
  14957. /*!**************************************************!*\
  14958. !*** ./src/options/presets/MediumObfuscation.ts ***!
  14959. \**************************************************/
  14960. /*! flagged exports */
  14961. /*! export MEDIUM_OBFUSCATION_PRESET [provided] [no usage info] [missing usage info prevents renaming] */
  14962. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14963. /*! other exports [not provided] [no usage info] */
  14964. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14965. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14966. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14967. exports.MEDIUM_OBFUSCATION_PRESET = void 0;
  14968. const OptionsPreset_1 = __webpack_require__(/*! ../../enums/options/presets/OptionsPreset */ "./src/enums/options/presets/OptionsPreset.ts");
  14969. const StringArrayEncoding_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  14970. const LowObfuscation_1 = __webpack_require__(/*! ./LowObfuscation */ "./src/options/presets/LowObfuscation.ts");
  14971. exports.MEDIUM_OBFUSCATION_PRESET = Object.freeze(Object.assign(Object.assign({}, LowObfuscation_1.LOW_OBFUSCATION_PRESET), { controlFlowFlattening: true, deadCodeInjection: true, numbersToExpressions: true, optionsPreset: OptionsPreset_1.OptionsPreset.MediumObfuscation, splitStrings: true, splitStringsChunkLength: 10, stringArrayEncoding: [
  14972. StringArrayEncoding_1.StringArrayEncoding.Base64
  14973. ], stringArrayWrappersCount: 2, transformObjectKeys: true }));
  14974. /***/ }),
  14975. /***/ "./src/options/presets/NoCustomNodes.ts":
  14976. /*!**********************************************!*\
  14977. !*** ./src/options/presets/NoCustomNodes.ts ***!
  14978. \**********************************************/
  14979. /*! flagged exports */
  14980. /*! export NO_ADDITIONAL_NODES_PRESET [provided] [no usage info] [missing usage info prevents renaming] */
  14981. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  14982. /*! other exports [not provided] [no usage info] */
  14983. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  14984. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  14985. Object.defineProperty(exports, "__esModule", ({ value: true }));
  14986. exports.NO_ADDITIONAL_NODES_PRESET = void 0;
  14987. const IdentifierNamesGenerator_1 = __webpack_require__(/*! ../../enums/generators/identifier-names-generators/IdentifierNamesGenerator */ "./src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts");
  14988. const ObfuscationTarget_1 = __webpack_require__(/*! ../../enums/ObfuscationTarget */ "./src/enums/ObfuscationTarget.ts");
  14989. const SourceMapMode_1 = __webpack_require__(/*! ../../enums/source-map/SourceMapMode */ "./src/enums/source-map/SourceMapMode.ts");
  14990. const StringArrayEncoding_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  14991. const StringArrayWrappersType_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayWrappersType */ "./src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts");
  14992. const StringArrayIndexesType_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayIndexesType */ "./src/enums/node-transformers/string-array-transformers/StringArrayIndexesType.ts");
  14993. exports.NO_ADDITIONAL_NODES_PRESET = Object.freeze({
  14994. compact: true,
  14995. controlFlowFlattening: false,
  14996. controlFlowFlatteningThreshold: 0,
  14997. deadCodeInjection: false,
  14998. deadCodeInjectionThreshold: 0,
  14999. debugProtection: false,
  15000. debugProtectionInterval: false,
  15001. disableConsoleOutput: false,
  15002. domainLock: [],
  15003. exclude: [],
  15004. forceTransformStrings: [],
  15005. identifierNamesGenerator: IdentifierNamesGenerator_1.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,
  15006. identifiersPrefix: '',
  15007. identifiersDictionary: [],
  15008. ignoreRequireImports: false,
  15009. inputFileName: '',
  15010. log: false,
  15011. numbersToExpressions: false,
  15012. renameGlobals: false,
  15013. renameProperties: false,
  15014. reservedNames: [],
  15015. reservedStrings: [],
  15016. rotateStringArray: false,
  15017. seed: 0,
  15018. selfDefending: false,
  15019. shuffleStringArray: false,
  15020. simplify: false,
  15021. sourceMap: false,
  15022. sourceMapBaseUrl: '',
  15023. sourceMapFileName: '',
  15024. sourceMapMode: SourceMapMode_1.SourceMapMode.Separate,
  15025. splitStrings: false,
  15026. splitStringsChunkLength: 0,
  15027. stringArray: false,
  15028. stringArrayEncoding: [
  15029. StringArrayEncoding_1.StringArrayEncoding.None
  15030. ],
  15031. stringArrayIndexesType: [
  15032. StringArrayIndexesType_1.StringArrayIndexesType.HexadecimalNumber
  15033. ],
  15034. stringArrayIndexShift: false,
  15035. stringArrayWrappersChainedCalls: false,
  15036. stringArrayWrappersCount: 0,
  15037. stringArrayWrappersType: StringArrayWrappersType_1.StringArrayWrappersType.Variable,
  15038. stringArrayThreshold: 0,
  15039. target: ObfuscationTarget_1.ObfuscationTarget.Browser,
  15040. transformObjectKeys: false,
  15041. unicodeEscapeSequence: false
  15042. });
  15043. /***/ }),
  15044. /***/ "./src/options/validators/IsAllowedForObfuscationTargets.ts":
  15045. /*!******************************************************************!*\
  15046. !*** ./src/options/validators/IsAllowedForObfuscationTargets.ts ***!
  15047. \******************************************************************/
  15048. /*! unknown exports (runtime-defined) */
  15049. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15050. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15051. var __importDefault = (this && this.__importDefault) || function (mod) {
  15052. return (mod && mod.__esModule) ? mod : { "default": mod };
  15053. };
  15054. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15055. exports.IsAllowedForObfuscationTargets = void 0;
  15056. const class_validator_1 = __webpack_require__(/*! class-validator */ "class-validator");
  15057. const fast_deep_equal_1 = __importDefault(__webpack_require__(/*! fast-deep-equal */ "fast-deep-equal"));
  15058. const StringSeparator_1 = __webpack_require__(/*! ../../enums/StringSeparator */ "./src/enums/StringSeparator.ts");
  15059. const Default_1 = __webpack_require__(/*! ../presets/Default */ "./src/options/presets/Default.ts");
  15060. function IsAllowedForObfuscationTargets(obfuscationTargets, validationOptions) {
  15061. return (optionsObject, propertyName) => {
  15062. class_validator_1.registerDecorator({
  15063. propertyName,
  15064. constraints: [obfuscationTargets],
  15065. name: 'IsAllowedForObfuscationTargets',
  15066. options: validationOptions,
  15067. target: optionsObject.constructor,
  15068. validator: {
  15069. validate(value, validationArguments) {
  15070. const options = validationArguments.object;
  15071. const defaultValue = Default_1.DEFAULT_PRESET[propertyName];
  15072. const isDefaultValue = fast_deep_equal_1.default(value, defaultValue);
  15073. return isDefaultValue || obfuscationTargets.includes(options.target);
  15074. },
  15075. defaultMessage(validationArguments) {
  15076. const requiredObfuscationTargetsString = obfuscationTargets.join(`${StringSeparator_1.StringSeparator.Comma} `);
  15077. return `This option allowed only for obfuscation targets: ${requiredObfuscationTargetsString}`;
  15078. }
  15079. }
  15080. });
  15081. };
  15082. }
  15083. exports.IsAllowedForObfuscationTargets = IsAllowedForObfuscationTargets;
  15084. /***/ }),
  15085. /***/ "./src/source-code/ObfuscatedCode.ts":
  15086. /*!*******************************************!*\
  15087. !*** ./src/source-code/ObfuscatedCode.ts ***!
  15088. \*******************************************/
  15089. /*! unknown exports (runtime-defined) */
  15090. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15091. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15092. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15093. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15094. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15095. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15096. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15097. };
  15098. var __metadata = (this && this.__metadata) || function (k, v) {
  15099. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15100. };
  15101. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15102. return function (target, key) { decorator(target, key, paramIndex); }
  15103. };
  15104. var _a, _b;
  15105. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15106. exports.ObfuscatedCode = void 0;
  15107. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15108. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15109. const ICryptUtils_1 = __webpack_require__(/*! ../interfaces/utils/ICryptUtils */ "./src/interfaces/utils/ICryptUtils.ts");
  15110. const Initializable_1 = __webpack_require__(/*! ../decorators/Initializable */ "./src/decorators/Initializable.ts");
  15111. const SourceMapMode_1 = __webpack_require__(/*! ../enums/source-map/SourceMapMode */ "./src/enums/source-map/SourceMapMode.ts");
  15112. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15113. let ObfuscatedCode = class ObfuscatedCode {
  15114. constructor(cryptUtils, options) {
  15115. this.cryptUtils = cryptUtils;
  15116. this.options = options;
  15117. }
  15118. initialize(obfuscatedCode, sourceMap) {
  15119. this.obfuscatedCode = obfuscatedCode;
  15120. this.sourceMap = sourceMap;
  15121. }
  15122. getObfuscatedCode() {
  15123. return this.correctObfuscatedCode();
  15124. }
  15125. getSourceMap() {
  15126. return this.sourceMap;
  15127. }
  15128. toString() {
  15129. return this.obfuscatedCode;
  15130. }
  15131. correctObfuscatedCode() {
  15132. if (!this.sourceMap) {
  15133. return this.obfuscatedCode;
  15134. }
  15135. const sourceMapUrl = this.options.sourceMapBaseUrl + this.options.sourceMapFileName;
  15136. let sourceMappingUrl = '//# sourceMappingURL=';
  15137. switch (this.options.sourceMapMode) {
  15138. case SourceMapMode_1.SourceMapMode.Inline:
  15139. sourceMappingUrl += `data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;
  15140. break;
  15141. case SourceMapMode_1.SourceMapMode.Separate:
  15142. default:
  15143. if (!sourceMapUrl) {
  15144. return this.obfuscatedCode;
  15145. }
  15146. sourceMappingUrl += sourceMapUrl;
  15147. }
  15148. return `${this.obfuscatedCode}\n${sourceMappingUrl}`;
  15149. }
  15150. };
  15151. __decorate([
  15152. Initializable_1.initializable(),
  15153. __metadata("design:type", String)
  15154. ], ObfuscatedCode.prototype, "obfuscatedCode", void 0);
  15155. __decorate([
  15156. Initializable_1.initializable(),
  15157. __metadata("design:type", String)
  15158. ], ObfuscatedCode.prototype, "sourceMap", void 0);
  15159. ObfuscatedCode = __decorate([
  15160. inversify_1.injectable(),
  15161. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICryptUtils)),
  15162. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15163. __metadata("design:paramtypes", [typeof (_a = typeof ICryptUtils_1.ICryptUtils !== "undefined" && ICryptUtils_1.ICryptUtils) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  15164. ], ObfuscatedCode);
  15165. exports.ObfuscatedCode = ObfuscatedCode;
  15166. /***/ }),
  15167. /***/ "./src/source-code/SourceCode.ts":
  15168. /*!***************************************!*\
  15169. !*** ./src/source-code/SourceCode.ts ***!
  15170. \***************************************/
  15171. /*! flagged exports */
  15172. /*! export SourceCode [provided] [no usage info] [missing usage info prevents renaming] */
  15173. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15174. /*! other exports [not provided] [no usage info] */
  15175. /*! runtime requirements: __webpack_exports__ */
  15176. /***/ ((__unused_webpack_module, exports) => {
  15177. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15178. exports.SourceCode = void 0;
  15179. class SourceCode {
  15180. constructor(sourceCode, sourceMap) {
  15181. this.sourceCode = sourceCode;
  15182. this.sourceMap = sourceMap;
  15183. }
  15184. getSourceCode() {
  15185. return this.sourceCode;
  15186. }
  15187. getSourceMap() {
  15188. return this.sourceMap;
  15189. }
  15190. toString() {
  15191. return this.sourceCode;
  15192. }
  15193. }
  15194. exports.SourceCode = SourceCode;
  15195. /***/ }),
  15196. /***/ "./src/storages/ArrayStorage.ts":
  15197. /*!**************************************!*\
  15198. !*** ./src/storages/ArrayStorage.ts ***!
  15199. \**************************************/
  15200. /*! unknown exports (runtime-defined) */
  15201. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15202. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15203. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15204. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15205. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15206. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15207. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15208. };
  15209. var __metadata = (this && this.__metadata) || function (k, v) {
  15210. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15211. };
  15212. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15213. return function (target, key) { decorator(target, key, paramIndex); }
  15214. };
  15215. var _a, _b;
  15216. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15217. exports.ArrayStorage = void 0;
  15218. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15219. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15220. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15221. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15222. const Initializable_1 = __webpack_require__(/*! ../decorators/Initializable */ "./src/decorators/Initializable.ts");
  15223. let ArrayStorage = class ArrayStorage {
  15224. constructor(randomGenerator, options) {
  15225. this.storageLength = 0;
  15226. this.randomGenerator = randomGenerator;
  15227. this.options = options;
  15228. }
  15229. initialize() {
  15230. this.storage = [];
  15231. this.storageId = this.randomGenerator.getRandomString(6);
  15232. }
  15233. delete(key) {
  15234. var _a;
  15235. const deletedElement = (_a = this.storage.splice(key, 1)[0]) !== null && _a !== void 0 ? _a : undefined;
  15236. if (deletedElement) {
  15237. this.storageLength--;
  15238. }
  15239. return deletedElement;
  15240. }
  15241. get(key) {
  15242. return this.storage[key];
  15243. }
  15244. getOrThrow(key) {
  15245. const value = this.get(key);
  15246. if (!value) {
  15247. throw new Error(`No value found in array storage with key \`${key}\``);
  15248. }
  15249. return value;
  15250. }
  15251. getKeyOf(value) {
  15252. const key = this.storage.indexOf(value);
  15253. return key >= 0 ? key : null;
  15254. }
  15255. getLength() {
  15256. return this.storageLength;
  15257. }
  15258. getStorage() {
  15259. return this.storage;
  15260. }
  15261. getStorageId() {
  15262. return this.storageId;
  15263. }
  15264. mergeWith(storage, mergeId = false) {
  15265. this.storage = [...this.storage, ...storage.getStorage()];
  15266. if (mergeId) {
  15267. this.storageId = storage.getStorageId();
  15268. }
  15269. }
  15270. set(key, value) {
  15271. if (key === this.storageLength) {
  15272. this.storage.push(value);
  15273. }
  15274. else {
  15275. this.storage.splice(key, 0, value);
  15276. }
  15277. this.storageLength++;
  15278. }
  15279. };
  15280. __decorate([
  15281. Initializable_1.initializable(),
  15282. __metadata("design:type", Array)
  15283. ], ArrayStorage.prototype, "storage", void 0);
  15284. __decorate([
  15285. Initializable_1.initializable(),
  15286. __metadata("design:type", String)
  15287. ], ArrayStorage.prototype, "storageId", void 0);
  15288. __decorate([
  15289. inversify_1.postConstruct(),
  15290. __metadata("design:type", Function),
  15291. __metadata("design:paramtypes", []),
  15292. __metadata("design:returntype", void 0)
  15293. ], ArrayStorage.prototype, "initialize", null);
  15294. ArrayStorage = __decorate([
  15295. inversify_1.injectable(),
  15296. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15297. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15298. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  15299. ], ArrayStorage);
  15300. exports.ArrayStorage = ArrayStorage;
  15301. /***/ }),
  15302. /***/ "./src/storages/MapStorage.ts":
  15303. /*!************************************!*\
  15304. !*** ./src/storages/MapStorage.ts ***!
  15305. \************************************/
  15306. /*! unknown exports (runtime-defined) */
  15307. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15308. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15309. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15310. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15311. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15312. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15313. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15314. };
  15315. var __metadata = (this && this.__metadata) || function (k, v) {
  15316. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15317. };
  15318. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15319. return function (target, key) { decorator(target, key, paramIndex); }
  15320. };
  15321. var _a, _b, _c;
  15322. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15323. exports.MapStorage = void 0;
  15324. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15325. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15326. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15327. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15328. const Initializable_1 = __webpack_require__(/*! ../decorators/Initializable */ "./src/decorators/Initializable.ts");
  15329. let MapStorage = class MapStorage {
  15330. constructor(randomGenerator, options) {
  15331. this.randomGenerator = randomGenerator;
  15332. this.options = options;
  15333. }
  15334. initialize() {
  15335. this.storage = new Map();
  15336. this.storageId = this.randomGenerator.getRandomString(6);
  15337. }
  15338. get(key) {
  15339. return this.storage.get(key);
  15340. }
  15341. getOrThrow(key) {
  15342. const value = this.get(key);
  15343. if (!value) {
  15344. throw new Error(`No value found in map storage with key \`${key}\``);
  15345. }
  15346. return value;
  15347. }
  15348. getKeyOf(value) {
  15349. for (const [key, storageValue] of this.storage) {
  15350. if (value === storageValue) {
  15351. return key;
  15352. }
  15353. }
  15354. return null;
  15355. }
  15356. getLength() {
  15357. return this.storage.size;
  15358. }
  15359. getStorage() {
  15360. return this.storage;
  15361. }
  15362. getStorageId() {
  15363. return this.storageId;
  15364. }
  15365. has(key) {
  15366. return this.storage.has(key);
  15367. }
  15368. mergeWith(storage, mergeId = false) {
  15369. this.storage = new Map([...this.storage, ...storage.getStorage()]);
  15370. if (mergeId) {
  15371. this.storageId = storage.getStorageId();
  15372. }
  15373. }
  15374. set(key, value) {
  15375. this.storage.set(key, value);
  15376. }
  15377. };
  15378. __decorate([
  15379. Initializable_1.initializable(),
  15380. __metadata("design:type", String)
  15381. ], MapStorage.prototype, "storageId", void 0);
  15382. __decorate([
  15383. Initializable_1.initializable(),
  15384. __metadata("design:type", typeof (_a = typeof Map !== "undefined" && Map) === "function" ? _a : Object)
  15385. ], MapStorage.prototype, "storage", void 0);
  15386. __decorate([
  15387. inversify_1.postConstruct(),
  15388. __metadata("design:type", Function),
  15389. __metadata("design:paramtypes", []),
  15390. __metadata("design:returntype", void 0)
  15391. ], MapStorage.prototype, "initialize", null);
  15392. MapStorage = __decorate([
  15393. inversify_1.injectable(),
  15394. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15395. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15396. __metadata("design:paramtypes", [typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  15397. ], MapStorage);
  15398. exports.MapStorage = MapStorage;
  15399. /***/ }),
  15400. /***/ "./src/storages/custom-code-helpers/CustomCodeHelperGroupStorage.ts":
  15401. /*!**************************************************************************!*\
  15402. !*** ./src/storages/custom-code-helpers/CustomCodeHelperGroupStorage.ts ***!
  15403. \**************************************************************************/
  15404. /*! unknown exports (runtime-defined) */
  15405. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15406. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15407. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15408. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15409. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15410. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15411. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15412. };
  15413. var __metadata = (this && this.__metadata) || function (k, v) {
  15414. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15415. };
  15416. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15417. return function (target, key) { decorator(target, key, paramIndex); }
  15418. };
  15419. var CustomCodeHelperGroupStorage_1, _a, _b, _c;
  15420. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15421. exports.CustomCodeHelperGroupStorage = void 0;
  15422. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15423. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15424. const TCustomCodeHelperGroupFactory_1 = __webpack_require__(/*! ../../types/container/custom-code-helpers/TCustomCodeHelperGroupFactory */ "./src/types/container/custom-code-helpers/TCustomCodeHelperGroupFactory.ts");
  15425. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15426. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15427. const CustomCodeHelperGroup_1 = __webpack_require__(/*! ../../enums/custom-code-helpers/CustomCodeHelperGroup */ "./src/enums/custom-code-helpers/CustomCodeHelperGroup.ts");
  15428. const MapStorage_1 = __webpack_require__(/*! ../MapStorage */ "./src/storages/MapStorage.ts");
  15429. let CustomCodeHelperGroupStorage = CustomCodeHelperGroupStorage_1 = class CustomCodeHelperGroupStorage extends MapStorage_1.MapStorage {
  15430. constructor(customCodeHelperGroupFactory, randomGenerator, options) {
  15431. super(randomGenerator, options);
  15432. this.customCodeHelperGroupFactory = customCodeHelperGroupFactory;
  15433. }
  15434. initialize() {
  15435. super.initialize();
  15436. CustomCodeHelperGroupStorage_1.customCodeHelperGroupsList.forEach((customCodeHelperGroupName) => {
  15437. const customCodeHelperGroup = this.customCodeHelperGroupFactory(customCodeHelperGroupName);
  15438. this.storage.set(customCodeHelperGroupName, customCodeHelperGroup);
  15439. });
  15440. }
  15441. };
  15442. CustomCodeHelperGroupStorage.customCodeHelperGroupsList = [
  15443. CustomCodeHelperGroup_1.CustomCodeHelperGroup.ConsoleOutput,
  15444. CustomCodeHelperGroup_1.CustomCodeHelperGroup.DebugProtection,
  15445. CustomCodeHelperGroup_1.CustomCodeHelperGroup.DomainLock,
  15446. CustomCodeHelperGroup_1.CustomCodeHelperGroup.SelfDefending,
  15447. CustomCodeHelperGroup_1.CustomCodeHelperGroup.StringArray
  15448. ];
  15449. __decorate([
  15450. inversify_1.postConstruct(),
  15451. __metadata("design:type", Function),
  15452. __metadata("design:paramtypes", []),
  15453. __metadata("design:returntype", void 0)
  15454. ], CustomCodeHelperGroupStorage.prototype, "initialize", null);
  15455. CustomCodeHelperGroupStorage = CustomCodeHelperGroupStorage_1 = __decorate([
  15456. inversify_1.injectable(),
  15457. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__ICustomCodeHelperGroup)),
  15458. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15459. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15460. __metadata("design:paramtypes", [typeof (_a = typeof TCustomCodeHelperGroupFactory_1.TCustomCodeHelperGroupFactory !== "undefined" && TCustomCodeHelperGroupFactory_1.TCustomCodeHelperGroupFactory) === "function" ? _a : Object, typeof (_b = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  15461. ], CustomCodeHelperGroupStorage);
  15462. exports.CustomCodeHelperGroupStorage = CustomCodeHelperGroupStorage;
  15463. /***/ }),
  15464. /***/ "./src/storages/custom-nodes/ControlFlowStorage.ts":
  15465. /*!*********************************************************!*\
  15466. !*** ./src/storages/custom-nodes/ControlFlowStorage.ts ***!
  15467. \*********************************************************/
  15468. /*! unknown exports (runtime-defined) */
  15469. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15470. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15471. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15472. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15473. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15474. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15475. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15476. };
  15477. var __metadata = (this && this.__metadata) || function (k, v) {
  15478. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15479. };
  15480. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15481. return function (target, key) { decorator(target, key, paramIndex); }
  15482. };
  15483. var _a, _b;
  15484. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15485. exports.ControlFlowStorage = void 0;
  15486. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15487. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15488. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15489. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15490. const MapStorage_1 = __webpack_require__(/*! ../MapStorage */ "./src/storages/MapStorage.ts");
  15491. let ControlFlowStorage = class ControlFlowStorage extends MapStorage_1.MapStorage {
  15492. constructor(randomGenerator, options) {
  15493. super(randomGenerator, options);
  15494. }
  15495. };
  15496. ControlFlowStorage = __decorate([
  15497. inversify_1.injectable(),
  15498. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15499. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15500. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  15501. ], ControlFlowStorage);
  15502. exports.ControlFlowStorage = ControlFlowStorage;
  15503. /***/ }),
  15504. /***/ "./src/storages/string-array-transformers/LiteralNodesCacheStorage.ts":
  15505. /*!****************************************************************************!*\
  15506. !*** ./src/storages/string-array-transformers/LiteralNodesCacheStorage.ts ***!
  15507. \****************************************************************************/
  15508. /*! unknown exports (runtime-defined) */
  15509. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15510. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15511. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15512. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15513. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15514. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15515. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15516. };
  15517. var __metadata = (this && this.__metadata) || function (k, v) {
  15518. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15519. };
  15520. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15521. return function (target, key) { decorator(target, key, paramIndex); }
  15522. };
  15523. var _a, _b;
  15524. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15525. exports.LiteralNodesCacheStorage = void 0;
  15526. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15527. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15528. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15529. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15530. const StringArrayEncoding_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  15531. const MapStorage_1 = __webpack_require__(/*! ../MapStorage */ "./src/storages/MapStorage.ts");
  15532. let LiteralNodesCacheStorage = class LiteralNodesCacheStorage extends MapStorage_1.MapStorage {
  15533. constructor(randomGenerator, options) {
  15534. super(randomGenerator, options);
  15535. }
  15536. buildKey(literalValue, stringArrayStorageItemData) {
  15537. return `${literalValue}-${Boolean(stringArrayStorageItemData)}`;
  15538. }
  15539. shouldUseCachedValue(key, stringArrayStorageItemData) {
  15540. return !this.options.stringArrayWrappersCount
  15541. && (stringArrayStorageItemData === null || stringArrayStorageItemData === void 0 ? void 0 : stringArrayStorageItemData.encoding) !== StringArrayEncoding_1.StringArrayEncoding.Rc4
  15542. && this.storage.has(key);
  15543. }
  15544. };
  15545. LiteralNodesCacheStorage = __decorate([
  15546. inversify_1.injectable(),
  15547. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15548. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15549. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  15550. ], LiteralNodesCacheStorage);
  15551. exports.LiteralNodesCacheStorage = LiteralNodesCacheStorage;
  15552. /***/ }),
  15553. /***/ "./src/storages/string-array-transformers/StringArrayScopeCallsWrapperLexicalScopeDataStorage.ts":
  15554. /*!*******************************************************************************************************!*\
  15555. !*** ./src/storages/string-array-transformers/StringArrayScopeCallsWrapperLexicalScopeDataStorage.ts ***!
  15556. \*******************************************************************************************************/
  15557. /*! unknown exports (runtime-defined) */
  15558. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15559. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15560. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15561. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15562. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15563. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15564. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15565. };
  15566. var __metadata = (this && this.__metadata) || function (k, v) {
  15567. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15568. };
  15569. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15570. return function (target, key) { decorator(target, key, paramIndex); }
  15571. };
  15572. var _a, _b;
  15573. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15574. exports.StringArrayScopeCallsWrapperLexicalScopeDataStorage = void 0;
  15575. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15576. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15577. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15578. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15579. const MapStorage_1 = __webpack_require__(/*! ../MapStorage */ "./src/storages/MapStorage.ts");
  15580. let StringArrayScopeCallsWrapperLexicalScopeDataStorage = class StringArrayScopeCallsWrapperLexicalScopeDataStorage extends MapStorage_1.MapStorage {
  15581. constructor(randomGenerator, options) {
  15582. super(randomGenerator, options);
  15583. }
  15584. };
  15585. StringArrayScopeCallsWrapperLexicalScopeDataStorage = __decorate([
  15586. inversify_1.injectable(),
  15587. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15588. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15589. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  15590. ], StringArrayScopeCallsWrapperLexicalScopeDataStorage);
  15591. exports.StringArrayScopeCallsWrapperLexicalScopeDataStorage = StringArrayScopeCallsWrapperLexicalScopeDataStorage;
  15592. /***/ }),
  15593. /***/ "./src/storages/string-array-transformers/StringArrayScopeCallsWrapperNamesDataStorage.ts":
  15594. /*!************************************************************************************************!*\
  15595. !*** ./src/storages/string-array-transformers/StringArrayScopeCallsWrapperNamesDataStorage.ts ***!
  15596. \************************************************************************************************/
  15597. /*! unknown exports (runtime-defined) */
  15598. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15599. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15600. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15601. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15602. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15603. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15604. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15605. };
  15606. var __metadata = (this && this.__metadata) || function (k, v) {
  15607. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15608. };
  15609. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15610. return function (target, key) { decorator(target, key, paramIndex); }
  15611. };
  15612. var _a, _b;
  15613. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15614. exports.StringArrayScopeCallsWrapperNamesDataStorage = void 0;
  15615. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15616. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15617. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15618. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15619. const MapStorage_1 = __webpack_require__(/*! ../MapStorage */ "./src/storages/MapStorage.ts");
  15620. let StringArrayScopeCallsWrapperNamesDataStorage = class StringArrayScopeCallsWrapperNamesDataStorage extends MapStorage_1.MapStorage {
  15621. constructor(randomGenerator, options) {
  15622. super(randomGenerator, options);
  15623. }
  15624. };
  15625. StringArrayScopeCallsWrapperNamesDataStorage = __decorate([
  15626. inversify_1.injectable(),
  15627. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15628. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15629. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object])
  15630. ], StringArrayScopeCallsWrapperNamesDataStorage);
  15631. exports.StringArrayScopeCallsWrapperNamesDataStorage = StringArrayScopeCallsWrapperNamesDataStorage;
  15632. /***/ }),
  15633. /***/ "./src/storages/string-array-transformers/StringArrayStorage.ts":
  15634. /*!**********************************************************************!*\
  15635. !*** ./src/storages/string-array-transformers/StringArrayStorage.ts ***!
  15636. \**********************************************************************/
  15637. /*! unknown exports (runtime-defined) */
  15638. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15639. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15640. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15641. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15642. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15643. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15644. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15645. };
  15646. var __metadata = (this && this.__metadata) || function (k, v) {
  15647. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15648. };
  15649. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15650. return function (target, key) { decorator(target, key, paramIndex); }
  15651. };
  15652. var StringArrayStorage_1, _a, _b, _c, _d, _e;
  15653. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15654. exports.StringArrayStorage = void 0;
  15655. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15656. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15657. const TIdentifierNamesGeneratorFactory_1 = __webpack_require__(/*! ../../types/container/generators/TIdentifierNamesGeneratorFactory */ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts");
  15658. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  15659. const ICryptUtilsSwappedAlphabet_1 = __webpack_require__(/*! ../../interfaces/utils/ICryptUtilsSwappedAlphabet */ "./src/interfaces/utils/ICryptUtilsSwappedAlphabet.ts");
  15660. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15661. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15662. const StringArrayEncoding_1 = __webpack_require__(/*! ../../enums/node-transformers/string-array-transformers/StringArrayEncoding */ "./src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts");
  15663. const MapStorage_1 = __webpack_require__(/*! ../MapStorage */ "./src/storages/MapStorage.ts");
  15664. let StringArrayStorage = StringArrayStorage_1 = class StringArrayStorage extends MapStorage_1.MapStorage {
  15665. constructor(identifierNamesGeneratorFactory, arrayUtils, randomGenerator, options, cryptUtilsSwappedAlphabet) {
  15666. super(randomGenerator, options);
  15667. this.rc4EncodedValuesSourcesCache = new Map();
  15668. this.indexShiftAmount = 0;
  15669. this.rotationAmount = 0;
  15670. this.stringArrayStorageCallsWrapperNamesMap = new Map();
  15671. this.identifierNamesGenerator = identifierNamesGeneratorFactory(options);
  15672. this.arrayUtils = arrayUtils;
  15673. this.cryptUtilsSwappedAlphabet = cryptUtilsSwappedAlphabet;
  15674. this.rc4Keys = this.randomGenerator.getRandomGenerator()
  15675. .n(() => this.randomGenerator.getRandomGenerator().string({
  15676. length: StringArrayStorage_1.rc4KeyLength
  15677. }), StringArrayStorage_1.rc4KeysCount);
  15678. }
  15679. initialize() {
  15680. super.initialize();
  15681. this.indexShiftAmount = this.options.stringArrayIndexShift
  15682. ? this.randomGenerator.getRandomInteger(StringArrayStorage_1.minimumIndexShiftAmount, StringArrayStorage_1.maximumIndexShiftAmount)
  15683. : 0;
  15684. this.rotationAmount = this.options.rotateStringArray
  15685. ? this.randomGenerator.getRandomInteger(StringArrayStorage_1.minimumRotationAmount, StringArrayStorage_1.maximumRotationAmount)
  15686. : 0;
  15687. }
  15688. get(value) {
  15689. return this.getOrSetIfDoesNotExist(value);
  15690. }
  15691. getIndexShiftAmount() {
  15692. return this.indexShiftAmount;
  15693. }
  15694. getRotationAmount() {
  15695. return this.rotationAmount;
  15696. }
  15697. getStorageName() {
  15698. return this.getStorageId();
  15699. }
  15700. getStorageId() {
  15701. if (!this.stringArrayStorageName) {
  15702. this.stringArrayStorageName = this.identifierNamesGenerator
  15703. .generateForGlobalScope(StringArrayStorage_1.stringArrayNameLength);
  15704. }
  15705. return this.stringArrayStorageName;
  15706. }
  15707. getStorageCallsWrapperName(stringArrayEncoding) {
  15708. var _a;
  15709. const storageCallsWrapperName = (_a = this.stringArrayStorageCallsWrapperNamesMap
  15710. .get(stringArrayEncoding)) !== null && _a !== void 0 ? _a : null;
  15711. if (storageCallsWrapperName) {
  15712. return storageCallsWrapperName;
  15713. }
  15714. const newStorageCallsWrapperName = this.identifierNamesGenerator
  15715. .generateForGlobalScope(StringArrayStorage_1.stringArrayNameLength);
  15716. this.stringArrayStorageCallsWrapperNamesMap.set(stringArrayEncoding, newStorageCallsWrapperName);
  15717. return newStorageCallsWrapperName;
  15718. }
  15719. rotateStorage() {
  15720. if (!this.getLength()) {
  15721. return;
  15722. }
  15723. this.storage = new Map(this.arrayUtils.rotate(Array.from(this.storage.entries()), this.rotationAmount));
  15724. }
  15725. shuffleStorage() {
  15726. this.storage = new Map(this.arrayUtils
  15727. .shuffle(Array.from(this.storage.entries()))
  15728. .map(([value, stringArrayStorageItemData], index) => {
  15729. stringArrayStorageItemData.index = index;
  15730. return [value, stringArrayStorageItemData];
  15731. })
  15732. .sort(([, stringArrayStorageItemDataA], [, stringArrayStorageItemDataB]) => stringArrayStorageItemDataA.index - stringArrayStorageItemDataB.index));
  15733. }
  15734. getOrSetIfDoesNotExist(value) {
  15735. const { encodedValue, encoding, decodeKey } = this.getEncodedValue(value);
  15736. const storedStringArrayStorageItemData = this.storage.get(encodedValue);
  15737. if (storedStringArrayStorageItemData) {
  15738. return storedStringArrayStorageItemData;
  15739. }
  15740. const stringArrayStorageItemData = {
  15741. encodedValue,
  15742. encoding,
  15743. decodeKey,
  15744. value,
  15745. index: this.getLength()
  15746. };
  15747. this.storage.set(encodedValue, stringArrayStorageItemData);
  15748. return stringArrayStorageItemData;
  15749. }
  15750. getEncodedValue(value) {
  15751. var _a;
  15752. const encoding = this.options.stringArrayEncoding.length
  15753. ? this.randomGenerator
  15754. .getRandomGenerator()
  15755. .pickone(this.options.stringArrayEncoding)
  15756. : null;
  15757. if (!encoding) {
  15758. throw new Error('`stringArrayEncoding` option array is empty');
  15759. }
  15760. switch (encoding) {
  15761. case StringArrayEncoding_1.StringArrayEncoding.Rc4: {
  15762. const decodeKey = this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys);
  15763. const encodedValue = this.cryptUtilsSwappedAlphabet.btoa(this.cryptUtilsSwappedAlphabet.rc4(value, decodeKey));
  15764. const encodedValueSources = (_a = this.rc4EncodedValuesSourcesCache.get(encodedValue)) !== null && _a !== void 0 ? _a : [];
  15765. let encodedValueSourcesLength = encodedValueSources.length;
  15766. const shouldAddValueToSourcesCache = !encodedValueSourcesLength || !encodedValueSources.includes(value);
  15767. if (shouldAddValueToSourcesCache) {
  15768. encodedValueSources.push(value);
  15769. encodedValueSourcesLength++;
  15770. }
  15771. this.rc4EncodedValuesSourcesCache.set(encodedValue, encodedValueSources);
  15772. if (encodedValueSourcesLength > 1) {
  15773. return this.getEncodedValue(value);
  15774. }
  15775. return { encodedValue, encoding, decodeKey };
  15776. }
  15777. case StringArrayEncoding_1.StringArrayEncoding.Base64: {
  15778. const decodeKey = null;
  15779. const encodedValue = this.cryptUtilsSwappedAlphabet.btoa(value);
  15780. return { encodedValue, encoding, decodeKey };
  15781. }
  15782. default: {
  15783. const decodeKey = null;
  15784. const encodedValue = value;
  15785. return { encodedValue, encoding, decodeKey };
  15786. }
  15787. }
  15788. }
  15789. };
  15790. StringArrayStorage.minimumRotationAmount = 100;
  15791. StringArrayStorage.maximumRotationAmount = 500;
  15792. StringArrayStorage.minimumIndexShiftAmount = 100;
  15793. StringArrayStorage.maximumIndexShiftAmount = 500;
  15794. StringArrayStorage.rc4KeyLength = 4;
  15795. StringArrayStorage.rc4KeysCount = 50;
  15796. StringArrayStorage.stringArrayNameLength = 4;
  15797. __decorate([
  15798. inversify_1.postConstruct(),
  15799. __metadata("design:type", Function),
  15800. __metadata("design:paramtypes", []),
  15801. __metadata("design:returntype", void 0)
  15802. ], StringArrayStorage.prototype, "initialize", null);
  15803. StringArrayStorage = StringArrayStorage_1 = __decorate([
  15804. inversify_1.injectable(),
  15805. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),
  15806. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  15807. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15808. __param(3, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15809. __param(4, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ICryptUtilsSwappedAlphabet)),
  15810. __metadata("design:paramtypes", [typeof (_a = typeof TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory !== "undefined" && TIdentifierNamesGeneratorFactory_1.TIdentifierNamesGeneratorFactory) === "function" ? _a : Object, typeof (_b = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _b : Object, typeof (_c = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _c : Object, typeof (_d = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _d : Object, typeof (_e = typeof ICryptUtilsSwappedAlphabet_1.ICryptUtilsSwappedAlphabet !== "undefined" && ICryptUtilsSwappedAlphabet_1.ICryptUtilsSwappedAlphabet) === "function" ? _e : Object])
  15811. ], StringArrayStorage);
  15812. exports.StringArrayStorage = StringArrayStorage;
  15813. /***/ }),
  15814. /***/ "./src/storages/string-array-transformers/VisitedLexicalScopeNodesStackStorage.ts":
  15815. /*!****************************************************************************************!*\
  15816. !*** ./src/storages/string-array-transformers/VisitedLexicalScopeNodesStackStorage.ts ***!
  15817. \****************************************************************************************/
  15818. /*! unknown exports (runtime-defined) */
  15819. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  15820. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  15821. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  15822. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  15823. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  15824. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  15825. return c > 3 && r && Object.defineProperty(target, key, r), r;
  15826. };
  15827. var __metadata = (this && this.__metadata) || function (k, v) {
  15828. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  15829. };
  15830. var __param = (this && this.__param) || function (paramIndex, decorator) {
  15831. return function (target, key) { decorator(target, key, paramIndex); }
  15832. };
  15833. var _a, _b, _c;
  15834. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15835. exports.VisitedLexicalScopeNodesStackStorage = void 0;
  15836. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  15837. const ServiceIdentifiers_1 = __webpack_require__(/*! ../../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  15838. const IArrayUtils_1 = __webpack_require__(/*! ../../interfaces/utils/IArrayUtils */ "./src/interfaces/utils/IArrayUtils.ts");
  15839. const IOptions_1 = __webpack_require__(/*! ../../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  15840. const IRandomGenerator_1 = __webpack_require__(/*! ../../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  15841. const ArrayStorage_1 = __webpack_require__(/*! ../ArrayStorage */ "./src/storages/ArrayStorage.ts");
  15842. let VisitedLexicalScopeNodesStackStorage = class VisitedLexicalScopeNodesStackStorage extends ArrayStorage_1.ArrayStorage {
  15843. constructor(randomGenerator, options, arrayUtils) {
  15844. super(randomGenerator, options);
  15845. this.arrayUtils = arrayUtils;
  15846. }
  15847. getLastElement() {
  15848. return this.arrayUtils.getLastElement(this.getStorage());
  15849. }
  15850. getPenultimateElement() {
  15851. var _a;
  15852. const storageLength = this.getLength();
  15853. return (_a = this.get(storageLength - 2)) !== null && _a !== void 0 ? _a : undefined;
  15854. }
  15855. push(nodeWithLexicalScopeStatements) {
  15856. const storageLength = this.getLength();
  15857. this.set(storageLength, nodeWithLexicalScopeStatements);
  15858. }
  15859. pop() {
  15860. const storageLength = this.getLength();
  15861. return this.delete(storageLength - 1);
  15862. }
  15863. };
  15864. VisitedLexicalScopeNodesStackStorage = __decorate([
  15865. inversify_1.injectable(),
  15866. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  15867. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  15868. __param(2, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IArrayUtils)),
  15869. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object, typeof (_b = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _b : Object, typeof (_c = typeof IArrayUtils_1.IArrayUtils !== "undefined" && IArrayUtils_1.IArrayUtils) === "function" ? _c : Object])
  15870. ], VisitedLexicalScopeNodesStackStorage);
  15871. exports.VisitedLexicalScopeNodesStackStorage = VisitedLexicalScopeNodesStackStorage;
  15872. /***/ }),
  15873. /***/ "./src/types/container/calls-graph-analyzer/TCalleeDataExtractorFactory.ts":
  15874. /*!*********************************************************************************!*\
  15875. !*** ./src/types/container/calls-graph-analyzer/TCalleeDataExtractorFactory.ts ***!
  15876. \*********************************************************************************/
  15877. /*! flagged exports */
  15878. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15879. /*! other exports [not provided] [no usage info] */
  15880. /*! runtime requirements: __webpack_exports__ */
  15881. /***/ ((__unused_webpack_module, exports) => {
  15882. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15883. /***/ }),
  15884. /***/ "./src/types/container/code-transformers/TCodeTransformerFactory.ts":
  15885. /*!**************************************************************************!*\
  15886. !*** ./src/types/container/code-transformers/TCodeTransformerFactory.ts ***!
  15887. \**************************************************************************/
  15888. /*! flagged exports */
  15889. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15890. /*! other exports [not provided] [no usage info] */
  15891. /*! runtime requirements: __webpack_exports__ */
  15892. /***/ ((__unused_webpack_module, exports) => {
  15893. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15894. /***/ }),
  15895. /***/ "./src/types/container/custom-code-helpers/TCustomCodeHelperFactory.ts":
  15896. /*!*****************************************************************************!*\
  15897. !*** ./src/types/container/custom-code-helpers/TCustomCodeHelperFactory.ts ***!
  15898. \*****************************************************************************/
  15899. /*! flagged exports */
  15900. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15901. /*! other exports [not provided] [no usage info] */
  15902. /*! runtime requirements: __webpack_exports__ */
  15903. /***/ ((__unused_webpack_module, exports) => {
  15904. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15905. /***/ }),
  15906. /***/ "./src/types/container/custom-code-helpers/TCustomCodeHelperGroupFactory.ts":
  15907. /*!**********************************************************************************!*\
  15908. !*** ./src/types/container/custom-code-helpers/TCustomCodeHelperGroupFactory.ts ***!
  15909. \**********************************************************************************/
  15910. /*! flagged exports */
  15911. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15912. /*! other exports [not provided] [no usage info] */
  15913. /*! runtime requirements: __webpack_exports__ */
  15914. /***/ ((__unused_webpack_module, exports) => {
  15915. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15916. /***/ }),
  15917. /***/ "./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts":
  15918. /*!***************************************************************************!*\
  15919. !*** ./src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts ***!
  15920. \***************************************************************************/
  15921. /*! flagged exports */
  15922. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15923. /*! other exports [not provided] [no usage info] */
  15924. /*! runtime requirements: __webpack_exports__ */
  15925. /***/ ((__unused_webpack_module, exports) => {
  15926. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15927. /***/ }),
  15928. /***/ "./src/types/container/custom-nodes/TDeadNodeInjectionCustomNodeFactory.ts":
  15929. /*!*********************************************************************************!*\
  15930. !*** ./src/types/container/custom-nodes/TDeadNodeInjectionCustomNodeFactory.ts ***!
  15931. \*********************************************************************************/
  15932. /*! flagged exports */
  15933. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15934. /*! other exports [not provided] [no usage info] */
  15935. /*! runtime requirements: __webpack_exports__ */
  15936. /***/ ((__unused_webpack_module, exports) => {
  15937. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15938. /***/ }),
  15939. /***/ "./src/types/container/custom-nodes/TObjectExpressionKeysTransformerCustomNodeFactory.ts":
  15940. /*!***********************************************************************************************!*\
  15941. !*** ./src/types/container/custom-nodes/TObjectExpressionKeysTransformerCustomNodeFactory.ts ***!
  15942. \***********************************************************************************************/
  15943. /*! flagged exports */
  15944. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15945. /*! other exports [not provided] [no usage info] */
  15946. /*! runtime requirements: __webpack_exports__ */
  15947. /***/ ((__unused_webpack_module, exports) => {
  15948. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15949. /***/ }),
  15950. /***/ "./src/types/container/custom-nodes/TStringArrayCustomNodeFactory.ts":
  15951. /*!***************************************************************************!*\
  15952. !*** ./src/types/container/custom-nodes/TStringArrayCustomNodeFactory.ts ***!
  15953. \***************************************************************************/
  15954. /*! flagged exports */
  15955. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15956. /*! other exports [not provided] [no usage info] */
  15957. /*! runtime requirements: __webpack_exports__ */
  15958. /***/ ((__unused_webpack_module, exports) => {
  15959. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15960. /***/ }),
  15961. /***/ "./src/types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory.ts":
  15962. /*!***************************************************************************************************!*\
  15963. !*** ./src/types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory.ts ***!
  15964. \***************************************************************************************************/
  15965. /*! flagged exports */
  15966. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15967. /*! other exports [not provided] [no usage info] */
  15968. /*! runtime requirements: __webpack_exports__ */
  15969. /***/ ((__unused_webpack_module, exports) => {
  15970. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15971. /***/ }),
  15972. /***/ "./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts":
  15973. /*!****************************************************************************!*\
  15974. !*** ./src/types/container/generators/TIdentifierNamesGeneratorFactory.ts ***!
  15975. \****************************************************************************/
  15976. /*! flagged exports */
  15977. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15978. /*! other exports [not provided] [no usage info] */
  15979. /*! runtime requirements: __webpack_exports__ */
  15980. /***/ ((__unused_webpack_module, exports) => {
  15981. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15982. /***/ }),
  15983. /***/ "./src/types/container/node-transformers/TControlFlowReplacerFactory.ts":
  15984. /*!******************************************************************************!*\
  15985. !*** ./src/types/container/node-transformers/TControlFlowReplacerFactory.ts ***!
  15986. \******************************************************************************/
  15987. /*! flagged exports */
  15988. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  15989. /*! other exports [not provided] [no usage info] */
  15990. /*! runtime requirements: __webpack_exports__ */
  15991. /***/ ((__unused_webpack_module, exports) => {
  15992. Object.defineProperty(exports, "__esModule", ({ value: true }));
  15993. /***/ }),
  15994. /***/ "./src/types/container/node-transformers/TControlFlowStorageFactory.ts":
  15995. /*!*****************************************************************************!*\
  15996. !*** ./src/types/container/node-transformers/TControlFlowStorageFactory.ts ***!
  15997. \*****************************************************************************/
  15998. /*! flagged exports */
  15999. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16000. /*! other exports [not provided] [no usage info] */
  16001. /*! runtime requirements: __webpack_exports__ */
  16002. /***/ ((__unused_webpack_module, exports) => {
  16003. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16004. /***/ }),
  16005. /***/ "./src/types/container/node-transformers/TNodeTransformerFactory.ts":
  16006. /*!**************************************************************************!*\
  16007. !*** ./src/types/container/node-transformers/TNodeTransformerFactory.ts ***!
  16008. \**************************************************************************/
  16009. /*! flagged exports */
  16010. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16011. /*! other exports [not provided] [no usage info] */
  16012. /*! runtime requirements: __webpack_exports__ */
  16013. /***/ ((__unused_webpack_module, exports) => {
  16014. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16015. /***/ }),
  16016. /***/ "./src/types/container/node-transformers/TObfuscatingGuardFactory.ts":
  16017. /*!***************************************************************************!*\
  16018. !*** ./src/types/container/node-transformers/TObfuscatingGuardFactory.ts ***!
  16019. \***************************************************************************/
  16020. /*! flagged exports */
  16021. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16022. /*! other exports [not provided] [no usage info] */
  16023. /*! runtime requirements: __webpack_exports__ */
  16024. /***/ ((__unused_webpack_module, exports) => {
  16025. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16026. /***/ }),
  16027. /***/ "./src/types/container/node-transformers/TObjectExpressionExtractorFactory.ts":
  16028. /*!************************************************************************************!*\
  16029. !*** ./src/types/container/node-transformers/TObjectExpressionExtractorFactory.ts ***!
  16030. \************************************************************************************/
  16031. /*! flagged exports */
  16032. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16033. /*! other exports [not provided] [no usage info] */
  16034. /*! runtime requirements: __webpack_exports__ */
  16035. /***/ ((__unused_webpack_module, exports) => {
  16036. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16037. /***/ }),
  16038. /***/ "./src/types/container/source-code/TObfuscatedCodeFactory.ts":
  16039. /*!*******************************************************************!*\
  16040. !*** ./src/types/container/source-code/TObfuscatedCodeFactory.ts ***!
  16041. \*******************************************************************/
  16042. /*! flagged exports */
  16043. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16044. /*! other exports [not provided] [no usage info] */
  16045. /*! runtime requirements: __webpack_exports__ */
  16046. /***/ ((__unused_webpack_module, exports) => {
  16047. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16048. /***/ }),
  16049. /***/ "./src/types/options/TInputOptions.ts":
  16050. /*!********************************************!*\
  16051. !*** ./src/types/options/TInputOptions.ts ***!
  16052. \********************************************/
  16053. /*! flagged exports */
  16054. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16055. /*! other exports [not provided] [no usage info] */
  16056. /*! runtime requirements: __webpack_exports__ */
  16057. /***/ ((__unused_webpack_module, exports) => {
  16058. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16059. /***/ }),
  16060. /***/ "./src/types/options/TOptionsPreset.ts":
  16061. /*!*********************************************!*\
  16062. !*** ./src/types/options/TOptionsPreset.ts ***!
  16063. \*********************************************/
  16064. /*! flagged exports */
  16065. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16066. /*! other exports [not provided] [no usage info] */
  16067. /*! runtime requirements: __webpack_exports__ */
  16068. /***/ ((__unused_webpack_module, exports) => {
  16069. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16070. /***/ }),
  16071. /***/ "./src/types/options/TStringArrayWrappersType.ts":
  16072. /*!*******************************************************!*\
  16073. !*** ./src/types/options/TStringArrayWrappersType.ts ***!
  16074. \*******************************************************/
  16075. /*! flagged exports */
  16076. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16077. /*! other exports [not provided] [no usage info] */
  16078. /*! runtime requirements: __webpack_exports__ */
  16079. /***/ ((__unused_webpack_module, exports) => {
  16080. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16081. /***/ }),
  16082. /***/ "./src/types/storages/TControlFlowStorage.ts":
  16083. /*!***************************************************!*\
  16084. !*** ./src/types/storages/TControlFlowStorage.ts ***!
  16085. \***************************************************/
  16086. /*! flagged exports */
  16087. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16088. /*! other exports [not provided] [no usage info] */
  16089. /*! runtime requirements: __webpack_exports__ */
  16090. /***/ ((__unused_webpack_module, exports) => {
  16091. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16092. /***/ }),
  16093. /***/ "./src/types/storages/TCustomCodeHelperGroupStorage.ts":
  16094. /*!*************************************************************!*\
  16095. !*** ./src/types/storages/TCustomCodeHelperGroupStorage.ts ***!
  16096. \*************************************************************/
  16097. /*! flagged exports */
  16098. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16099. /*! other exports [not provided] [no usage info] */
  16100. /*! runtime requirements: __webpack_exports__ */
  16101. /***/ ((__unused_webpack_module, exports) => {
  16102. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16103. /***/ }),
  16104. /***/ "./src/types/utils/TTypeFromEnum.ts":
  16105. /*!******************************************!*\
  16106. !*** ./src/types/utils/TTypeFromEnum.ts ***!
  16107. \******************************************/
  16108. /*! flagged exports */
  16109. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16110. /*! other exports [not provided] [no usage info] */
  16111. /*! runtime requirements: __webpack_exports__ */
  16112. /***/ ((__unused_webpack_module, exports) => {
  16113. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16114. /***/ }),
  16115. /***/ "./src/utils/AbstractTransformerNamesGroupsBuilder.ts":
  16116. /*!************************************************************!*\
  16117. !*** ./src/utils/AbstractTransformerNamesGroupsBuilder.ts ***!
  16118. \************************************************************/
  16119. /*! unknown exports (runtime-defined) */
  16120. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  16121. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  16122. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  16123. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  16124. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  16125. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  16126. return c > 3 && r && Object.defineProperty(target, key, r), r;
  16127. };
  16128. var __metadata = (this && this.__metadata) || function (k, v) {
  16129. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  16130. };
  16131. var __param = (this && this.__param) || function (paramIndex, decorator) {
  16132. return function (target, key) { decorator(target, key, paramIndex); }
  16133. };
  16134. var _a;
  16135. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16136. exports.AbstractTransformerNamesGroupsBuilder = void 0;
  16137. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  16138. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  16139. const ILevelledTopologicalSorter_1 = __webpack_require__(/*! ../interfaces/utils/ILevelledTopologicalSorter */ "./src/interfaces/utils/ILevelledTopologicalSorter.ts");
  16140. let AbstractTransformerNamesGroupsBuilder = class AbstractTransformerNamesGroupsBuilder {
  16141. constructor(levelledTopologicalSorter) {
  16142. this.levelledTopologicalSorter = levelledTopologicalSorter;
  16143. }
  16144. build(normalizedTransformers) {
  16145. const transformerNames = Object.keys(normalizedTransformers);
  16146. const relationEdges = this.buildTransformersRelationEdges(transformerNames, normalizedTransformers);
  16147. for (const [precedent, consequent] of relationEdges) {
  16148. this.levelledTopologicalSorter.add(precedent, consequent);
  16149. }
  16150. return this.levelledTopologicalSorter.sortByGroups();
  16151. }
  16152. buildTransformersRelationEdges(transformerNames, normalizedTransformers) {
  16153. const relationEdges = [];
  16154. for (const transformerName of transformerNames) {
  16155. const transformer = normalizedTransformers[transformerName];
  16156. const runAfterRelations = transformer.runAfter;
  16157. if (!runAfterRelations || !runAfterRelations.length) {
  16158. relationEdges.push([transformerName, null]);
  16159. continue;
  16160. }
  16161. for (const runAfterRelation of runAfterRelations) {
  16162. const isUnknownRelation = normalizedTransformers[runAfterRelation] === undefined;
  16163. if (isUnknownRelation) {
  16164. relationEdges.push([transformerName, null]);
  16165. continue;
  16166. }
  16167. relationEdges.push([runAfterRelation, transformerName]);
  16168. }
  16169. }
  16170. return relationEdges;
  16171. }
  16172. };
  16173. AbstractTransformerNamesGroupsBuilder = __decorate([
  16174. inversify_1.injectable(),
  16175. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ILevelledTopologicalSorter)),
  16176. __metadata("design:paramtypes", [typeof (_a = typeof ILevelledTopologicalSorter_1.ILevelledTopologicalSorter !== "undefined" && ILevelledTopologicalSorter_1.ILevelledTopologicalSorter) === "function" ? _a : Object])
  16177. ], AbstractTransformerNamesGroupsBuilder);
  16178. exports.AbstractTransformerNamesGroupsBuilder = AbstractTransformerNamesGroupsBuilder;
  16179. /***/ }),
  16180. /***/ "./src/utils/ArrayUtils.ts":
  16181. /*!*********************************!*\
  16182. !*** ./src/utils/ArrayUtils.ts ***!
  16183. \*********************************/
  16184. /*! unknown exports (runtime-defined) */
  16185. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  16186. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  16187. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  16188. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  16189. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  16190. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  16191. return c > 3 && r && Object.defineProperty(target, key, r), r;
  16192. };
  16193. var __metadata = (this && this.__metadata) || function (k, v) {
  16194. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  16195. };
  16196. var __param = (this && this.__param) || function (paramIndex, decorator) {
  16197. return function (target, key) { decorator(target, key, paramIndex); }
  16198. };
  16199. var _a;
  16200. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16201. exports.ArrayUtils = void 0;
  16202. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  16203. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  16204. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  16205. let ArrayUtils = class ArrayUtils {
  16206. constructor(randomGenerator) {
  16207. this.randomGenerator = randomGenerator;
  16208. }
  16209. createWithRange(length) {
  16210. const range = [];
  16211. for (let i = 0; i < length; i++) {
  16212. range.push(i);
  16213. }
  16214. return range;
  16215. }
  16216. fillWithRange(length, valueFunction) {
  16217. const range = [];
  16218. for (let i = 0; i < length; i++) {
  16219. range.push(valueFunction(i));
  16220. }
  16221. return range;
  16222. }
  16223. findMostOccurringElement(array) {
  16224. var _a;
  16225. const arrayLength = array.length;
  16226. if (!arrayLength) {
  16227. return null;
  16228. }
  16229. const elementsMap = {};
  16230. let mostOccurringElement = array[0];
  16231. let mostOccurringElementCount = 1;
  16232. for (const element of array) {
  16233. const currentElementCount = (_a = elementsMap[element]) !== null && _a !== void 0 ? _a : 0;
  16234. const updatedElementCount = currentElementCount + 1;
  16235. if (updatedElementCount > mostOccurringElementCount) {
  16236. mostOccurringElement = element;
  16237. mostOccurringElementCount = updatedElementCount;
  16238. }
  16239. elementsMap[element] = updatedElementCount;
  16240. }
  16241. return mostOccurringElement;
  16242. }
  16243. getLastElement(array) {
  16244. var _a;
  16245. const arrayLength = array.length;
  16246. return (_a = array[arrayLength - 1]) !== null && _a !== void 0 ? _a : undefined;
  16247. }
  16248. rotate(array, times) {
  16249. if (!array.length) {
  16250. throw new ReferenceError('Cannot rotate empty array.');
  16251. }
  16252. if (times <= 0) {
  16253. return array;
  16254. }
  16255. const newArray = array;
  16256. let temp;
  16257. while (times--) {
  16258. temp = newArray.pop();
  16259. if (temp) {
  16260. newArray.unshift(temp);
  16261. }
  16262. }
  16263. return newArray;
  16264. }
  16265. shuffle(array) {
  16266. const shuffledArray = [...array];
  16267. for (let i = shuffledArray.length; i; i--) {
  16268. const j = Math.floor(this.randomGenerator.getMathRandom() * i);
  16269. [shuffledArray[i - 1], shuffledArray[j]] = [shuffledArray[j], shuffledArray[i - 1]];
  16270. }
  16271. return shuffledArray;
  16272. }
  16273. };
  16274. ArrayUtils = __decorate([
  16275. inversify_1.injectable(),
  16276. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  16277. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object])
  16278. ], ArrayUtils);
  16279. exports.ArrayUtils = ArrayUtils;
  16280. /***/ }),
  16281. /***/ "./src/utils/CryptUtils.ts":
  16282. /*!*********************************!*\
  16283. !*** ./src/utils/CryptUtils.ts ***!
  16284. \*********************************/
  16285. /*! unknown exports (runtime-defined) */
  16286. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  16287. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  16288. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  16289. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  16290. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  16291. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  16292. return c > 3 && r && Object.defineProperty(target, key, r), r;
  16293. };
  16294. var __metadata = (this && this.__metadata) || function (k, v) {
  16295. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  16296. };
  16297. var __param = (this && this.__param) || function (paramIndex, decorator) {
  16298. return function (target, key) { decorator(target, key, paramIndex); }
  16299. };
  16300. var _a;
  16301. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16302. exports.CryptUtils = void 0;
  16303. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  16304. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  16305. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  16306. const Base64Alphabet_1 = __webpack_require__(/*! ../constants/Base64Alphabet */ "./src/constants/Base64Alphabet.ts");
  16307. const RandomGenerator_1 = __webpack_require__(/*! ./RandomGenerator */ "./src/utils/RandomGenerator.ts");
  16308. const Utils_1 = __webpack_require__(/*! ./Utils */ "./src/utils/Utils.ts");
  16309. let CryptUtils = class CryptUtils {
  16310. constructor(randomGenerator) {
  16311. this.base64Alphabet = Base64Alphabet_1.base64alphabet;
  16312. this.randomGenerator = randomGenerator;
  16313. }
  16314. btoa(string) {
  16315. const chars = this.base64Alphabet;
  16316. let output = '';
  16317. string = encodeURIComponent(string).replace(/%([0-9A-F]{2})/g, (match, p1) => {
  16318. return String.fromCharCode(parseInt(`${Utils_1.Utils.hexadecimalPrefix}${p1}`, 16));
  16319. });
  16320. for (let block, charCode, idx = 0, map = chars; string.charAt(idx | 0) || (map = '=', idx % 1); output += map.charAt(63 & block >> 8 - idx % 1 * 8)) {
  16321. charCode = string.charCodeAt(idx += 3 / 4);
  16322. if (charCode > 0xFF) {
  16323. throw new Error('\'btoa\' failed: The string to be encoded contains characters outside of the Latin1 range.');
  16324. }
  16325. block = block << 8 | charCode;
  16326. }
  16327. return output;
  16328. }
  16329. hideString(str, length) {
  16330. const escapeRegExp = (s) => s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
  16331. const randomMerge = (s1, s2) => {
  16332. let i1 = -1;
  16333. let i2 = -1;
  16334. let result = '';
  16335. while (i1 < s1.length || i2 < s2.length) {
  16336. if (this.randomGenerator.getMathRandom() < 0.5 && i2 < s2.length) {
  16337. result += s2.charAt(++i2);
  16338. }
  16339. else {
  16340. result += s1.charAt(++i1);
  16341. }
  16342. }
  16343. return result;
  16344. };
  16345. const randomString = this.randomGenerator.getRandomGenerator().string({
  16346. length: length,
  16347. pool: RandomGenerator_1.RandomGenerator.randomGeneratorPool
  16348. });
  16349. let randomStringDiff = randomString.replace(new RegExp(`[${escapeRegExp(str)}]`, 'g'), '');
  16350. const randomStringDiffArray = randomStringDiff.split('');
  16351. this.randomGenerator.getRandomGenerator().shuffle(randomStringDiffArray);
  16352. randomStringDiff = randomStringDiffArray.join('');
  16353. return [randomMerge(str, randomStringDiff), randomStringDiff];
  16354. }
  16355. rc4(string, key) {
  16356. const s = [];
  16357. let j = 0;
  16358. let x;
  16359. let result = '';
  16360. for (var i = 0; i < 256; i++) {
  16361. s[i] = i;
  16362. }
  16363. for (i = 0; i < 256; i++) {
  16364. j = (j + s[i] + key.charCodeAt(i % key.length)) % 256;
  16365. x = s[i];
  16366. s[i] = s[j];
  16367. s[j] = x;
  16368. }
  16369. i = 0;
  16370. j = 0;
  16371. for (let y = 0; y < string.length; y++) {
  16372. i = (i + 1) % 256;
  16373. j = (j + s[i]) % 256;
  16374. x = s[i];
  16375. s[i] = s[j];
  16376. s[j] = x;
  16377. result += String.fromCharCode(string.charCodeAt(y) ^ s[(s[i] + s[j]) % 256]);
  16378. }
  16379. return result;
  16380. }
  16381. };
  16382. CryptUtils = __decorate([
  16383. inversify_1.injectable(),
  16384. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  16385. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object])
  16386. ], CryptUtils);
  16387. exports.CryptUtils = CryptUtils;
  16388. /***/ }),
  16389. /***/ "./src/utils/CryptUtilsSwappedAlphabet.ts":
  16390. /*!************************************************!*\
  16391. !*** ./src/utils/CryptUtilsSwappedAlphabet.ts ***!
  16392. \************************************************/
  16393. /*! unknown exports (runtime-defined) */
  16394. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  16395. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  16396. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  16397. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  16398. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  16399. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  16400. return c > 3 && r && Object.defineProperty(target, key, r), r;
  16401. };
  16402. var __metadata = (this && this.__metadata) || function (k, v) {
  16403. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  16404. };
  16405. var __param = (this && this.__param) || function (paramIndex, decorator) {
  16406. return function (target, key) { decorator(target, key, paramIndex); }
  16407. };
  16408. var _a;
  16409. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16410. exports.CryptUtilsSwappedAlphabet = void 0;
  16411. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  16412. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  16413. const IRandomGenerator_1 = __webpack_require__(/*! ../interfaces/utils/IRandomGenerator */ "./src/interfaces/utils/IRandomGenerator.ts");
  16414. const Base64AlphabetSwapped_1 = __webpack_require__(/*! ../constants/Base64AlphabetSwapped */ "./src/constants/Base64AlphabetSwapped.ts");
  16415. const CryptUtils_1 = __webpack_require__(/*! ./CryptUtils */ "./src/utils/CryptUtils.ts");
  16416. let CryptUtilsSwappedAlphabet = class CryptUtilsSwappedAlphabet extends CryptUtils_1.CryptUtils {
  16417. constructor(randomGenerator) {
  16418. super(randomGenerator);
  16419. this.base64Alphabet = Base64AlphabetSwapped_1.base64alphabetSwapped;
  16420. }
  16421. };
  16422. CryptUtilsSwappedAlphabet = __decorate([
  16423. inversify_1.injectable(),
  16424. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IRandomGenerator)),
  16425. __metadata("design:paramtypes", [typeof (_a = typeof IRandomGenerator_1.IRandomGenerator !== "undefined" && IRandomGenerator_1.IRandomGenerator) === "function" ? _a : Object])
  16426. ], CryptUtilsSwappedAlphabet);
  16427. exports.CryptUtilsSwappedAlphabet = CryptUtilsSwappedAlphabet;
  16428. /***/ }),
  16429. /***/ "./src/utils/EscapeSequenceEncoder.ts":
  16430. /*!********************************************!*\
  16431. !*** ./src/utils/EscapeSequenceEncoder.ts ***!
  16432. \********************************************/
  16433. /*! unknown exports (runtime-defined) */
  16434. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  16435. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  16436. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  16437. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  16438. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  16439. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  16440. return c > 3 && r && Object.defineProperty(target, key, r), r;
  16441. };
  16442. var EscapeSequenceEncoder_1;
  16443. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16444. exports.EscapeSequenceEncoder = void 0;
  16445. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  16446. let EscapeSequenceEncoder = EscapeSequenceEncoder_1 = class EscapeSequenceEncoder {
  16447. constructor() {
  16448. this.stringsCache = new Map();
  16449. }
  16450. encode(string, encodeAllSymbols) {
  16451. const cacheKey = `${string}-${String(encodeAllSymbols)}`;
  16452. if (this.stringsCache.has(cacheKey)) {
  16453. return this.stringsCache.get(cacheKey);
  16454. }
  16455. const radix = 16;
  16456. const replaceRegExp = new RegExp('[\\s\\S]', 'g');
  16457. let prefix;
  16458. let template;
  16459. const result = string.replace(replaceRegExp, (character) => {
  16460. const shouldEncodeCharacter = encodeAllSymbols
  16461. || EscapeSequenceEncoder_1.forceEscapeCharactersRegExp.test(character);
  16462. if (!shouldEncodeCharacter) {
  16463. return character;
  16464. }
  16465. if (EscapeSequenceEncoder_1.ASCIICharactersRegExp.test(character)) {
  16466. prefix = '\\x';
  16467. template = '00';
  16468. }
  16469. else {
  16470. prefix = '\\u';
  16471. template = '0000';
  16472. }
  16473. return `${prefix}${(template + character.charCodeAt(0).toString(radix)).slice(-template.length)}`;
  16474. });
  16475. this.stringsCache.set(cacheKey, result);
  16476. this.stringsCache.set(`${result}-${String(encodeAllSymbols)}`, result);
  16477. return result;
  16478. }
  16479. };
  16480. EscapeSequenceEncoder.ASCIICharactersRegExp = /[\x00-\x7F]/;
  16481. EscapeSequenceEncoder.forceEscapeCharactersRegExp = /[\x00-\x1F\x7F-\x9F'"\\\s]/;
  16482. EscapeSequenceEncoder = EscapeSequenceEncoder_1 = __decorate([
  16483. inversify_1.injectable()
  16484. ], EscapeSequenceEncoder);
  16485. exports.EscapeSequenceEncoder = EscapeSequenceEncoder;
  16486. /***/ }),
  16487. /***/ "./src/utils/LevelledTopologicalSorter.ts":
  16488. /*!************************************************!*\
  16489. !*** ./src/utils/LevelledTopologicalSorter.ts ***!
  16490. \************************************************/
  16491. /*! unknown exports (runtime-defined) */
  16492. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  16493. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  16494. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  16495. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  16496. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  16497. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  16498. return c > 3 && r && Object.defineProperty(target, key, r), r;
  16499. };
  16500. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16501. exports.LevelledTopologicalSorter = void 0;
  16502. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  16503. let LevelledTopologicalSorter = class LevelledTopologicalSorter {
  16504. constructor() {
  16505. this.graph = new Map();
  16506. }
  16507. add(precedent, consequent = null) {
  16508. if (consequent !== null) {
  16509. return this.link(precedent, consequent);
  16510. }
  16511. return this.register(precedent);
  16512. }
  16513. sort() {
  16514. const consequents = Array.from(this.graph.keys());
  16515. const results = [];
  16516. const marks = {};
  16517. for (const consequent of consequents) {
  16518. if (marks[consequent] !== undefined) {
  16519. continue;
  16520. }
  16521. this.visit(results, marks, consequent);
  16522. }
  16523. return results;
  16524. }
  16525. sortByGroups() {
  16526. this.sort();
  16527. const resultItemsGroups = [];
  16528. while (this.hasNodes()) {
  16529. const rootNodes = this.findRootNodes();
  16530. resultItemsGroups.push(rootNodes);
  16531. for (const rootNode of rootNodes) {
  16532. this.delete(rootNode);
  16533. }
  16534. }
  16535. return resultItemsGroups;
  16536. }
  16537. delete(consequent) {
  16538. const precedents = this.getPrecedents(consequent);
  16539. if (precedents.length) {
  16540. throw new Error(`Unable to remove non-root node: ${consequent}`);
  16541. }
  16542. this.graph.delete(consequent);
  16543. const precedentsGroups = Array.from(this.graph.values());
  16544. for (const precedentsGroup of precedentsGroups) {
  16545. const precedentsCount = precedentsGroup.length - 1;
  16546. for (let index = precedentsCount; index >= 0; index = index - 1) {
  16547. if (precedentsGroup[index] !== consequent) {
  16548. continue;
  16549. }
  16550. precedentsGroup.splice(index, 1);
  16551. }
  16552. }
  16553. }
  16554. findRootNodes() {
  16555. const consequents = Array.from(this.graph.keys());
  16556. const rootNodes = [];
  16557. for (const consequent of consequents) {
  16558. if (!this.hasPrecedents(consequent)) {
  16559. rootNodes.push(consequent);
  16560. }
  16561. }
  16562. return rootNodes;
  16563. }
  16564. getPrecedents(consequent) {
  16565. const precedents = this.graph.get(consequent);
  16566. if (!precedents) {
  16567. throw new Error(`Unknown node: ${consequent}`);
  16568. }
  16569. return precedents;
  16570. }
  16571. hasNodes() {
  16572. return this.graph.size > 0;
  16573. }
  16574. hasPrecedents(consequent) {
  16575. return this.getPrecedents(consequent).length > 0;
  16576. }
  16577. link(precedent, consequent) {
  16578. this.register(precedent);
  16579. this.register(consequent);
  16580. const target = this.graph.get(consequent);
  16581. if (target && !target.includes(precedent)) {
  16582. target.push(precedent);
  16583. }
  16584. return this;
  16585. }
  16586. register(name) {
  16587. if (!this.graph.has(name)) {
  16588. this.graph.set(name, []);
  16589. }
  16590. return this;
  16591. }
  16592. visit(results, marks, name) {
  16593. const mark = marks[name];
  16594. if (mark === 'visiting') {
  16595. throw new Error(`Detected cycle involving node: ${name}`);
  16596. }
  16597. if (mark) {
  16598. return;
  16599. }
  16600. marks[name] = 'visiting';
  16601. const precedents = this.getPrecedents(name);
  16602. for (const precedent of precedents) {
  16603. this.visit(results, marks, precedent);
  16604. }
  16605. marks[name] = 'ok';
  16606. results.push(name);
  16607. return;
  16608. }
  16609. };
  16610. LevelledTopologicalSorter = __decorate([
  16611. inversify_1.injectable()
  16612. ], LevelledTopologicalSorter);
  16613. exports.LevelledTopologicalSorter = LevelledTopologicalSorter;
  16614. /***/ }),
  16615. /***/ "./src/utils/NumberUtils.ts":
  16616. /*!**********************************!*\
  16617. !*** ./src/utils/NumberUtils.ts ***!
  16618. \**********************************/
  16619. /*! flagged exports */
  16620. /*! export NumberUtils [provided] [no usage info] [missing usage info prevents renaming] */
  16621. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16622. /*! other exports [not provided] [no usage info] */
  16623. /*! runtime requirements: __webpack_exports__, __webpack_require__ */
  16624. /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
  16625. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16626. exports.NumberUtils = void 0;
  16627. const Utils_1 = __webpack_require__(/*! ./Utils */ "./src/utils/Utils.ts");
  16628. class NumberUtils {
  16629. static toHex(number) {
  16630. const radix = 16;
  16631. const basePart = typeof number === 'number'
  16632. ? number.toString(radix)
  16633. : `${number.toString(radix)}n`;
  16634. return `${Utils_1.Utils.hexadecimalPrefix}${basePart}`;
  16635. }
  16636. static isCeil(number) {
  16637. return typeof number === 'number'
  16638. ? number % 1 === 0
  16639. : true;
  16640. }
  16641. static isPositive(number) {
  16642. if (isNaN(number)) {
  16643. throw new Error('Given value is NaN');
  16644. }
  16645. if (number > 0) {
  16646. return true;
  16647. }
  16648. if (number < 0) {
  16649. return false;
  16650. }
  16651. if (1 / number === Number.POSITIVE_INFINITY) {
  16652. return true;
  16653. }
  16654. return false;
  16655. }
  16656. static isUnsafeNumber(number) {
  16657. if (isNaN(number)) {
  16658. throw new Error('Given value is NaN');
  16659. }
  16660. return number < Number.MIN_SAFE_INTEGER || number > Number.MAX_SAFE_INTEGER;
  16661. }
  16662. static getFactors(number) {
  16663. if (number === 0) {
  16664. throw new Error('Invalid number. Allowed only non-zero number');
  16665. }
  16666. number = Math.abs(number);
  16667. if (number === 1) {
  16668. return [-number, number];
  16669. }
  16670. const factors = [];
  16671. const root = Math.sqrt(number);
  16672. const isEven = number % 2 === 0;
  16673. const incrementValue = isEven ? 1 : 2;
  16674. for (let currentFactor = 1; currentFactor <= root; currentFactor += incrementValue) {
  16675. if (number % currentFactor !== 0) {
  16676. continue;
  16677. }
  16678. factors.push(...[-currentFactor, currentFactor]);
  16679. const compliment = number / currentFactor;
  16680. if (compliment !== currentFactor) {
  16681. factors.push(...[-compliment, compliment]);
  16682. }
  16683. }
  16684. return factors.sort((a, b) => a - b);
  16685. }
  16686. }
  16687. exports.NumberUtils = NumberUtils;
  16688. /***/ }),
  16689. /***/ "./src/utils/RandomGenerator.ts":
  16690. /*!**************************************!*\
  16691. !*** ./src/utils/RandomGenerator.ts ***!
  16692. \**************************************/
  16693. /*! unknown exports (runtime-defined) */
  16694. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  16695. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  16696. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  16697. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  16698. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  16699. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  16700. return c > 3 && r && Object.defineProperty(target, key, r), r;
  16701. };
  16702. var __metadata = (this && this.__metadata) || function (k, v) {
  16703. if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  16704. };
  16705. var __param = (this && this.__param) || function (paramIndex, decorator) {
  16706. return function (target, key) { decorator(target, key, paramIndex); }
  16707. };
  16708. var __importDefault = (this && this.__importDefault) || function (mod) {
  16709. return (mod && mod.__esModule) ? mod : { "default": mod };
  16710. };
  16711. var RandomGenerator_1, _a, _b, _c;
  16712. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16713. exports.RandomGenerator = void 0;
  16714. const inversify_1 = __webpack_require__(/*! inversify */ "inversify");
  16715. const ServiceIdentifiers_1 = __webpack_require__(/*! ../container/ServiceIdentifiers */ "./src/container/ServiceIdentifiers.ts");
  16716. const md5_1 = __importDefault(__webpack_require__(/*! md5 */ "md5"));
  16717. const chance_1 = __webpack_require__(/*! chance */ "chance");
  16718. const IOptions_1 = __webpack_require__(/*! ../interfaces/options/IOptions */ "./src/interfaces/options/IOptions.ts");
  16719. const ISourceCode_1 = __webpack_require__(/*! ../interfaces/source-code/ISourceCode */ "./src/interfaces/source-code/ISourceCode.ts");
  16720. const Initializable_1 = __webpack_require__(/*! ../decorators/Initializable */ "./src/decorators/Initializable.ts");
  16721. const AlphabetString_1 = __webpack_require__(/*! ../constants/AlphabetString */ "./src/constants/AlphabetString.ts");
  16722. const AlphabetStringUppercase_1 = __webpack_require__(/*! ../constants/AlphabetStringUppercase */ "./src/constants/AlphabetStringUppercase.ts");
  16723. let RandomGenerator = RandomGenerator_1 = class RandomGenerator {
  16724. constructor(sourceCode, options) {
  16725. this.sourceCode = sourceCode;
  16726. this.options = options;
  16727. }
  16728. initialize() {
  16729. this.randomGenerator = new chance_1.Chance(this.getRawSeed());
  16730. }
  16731. getMathRandom() {
  16732. return this.getRandomInteger(0, 99999) / 100000;
  16733. }
  16734. getRandomGenerator() {
  16735. return this.randomGenerator;
  16736. }
  16737. getRandomInteger(min, max) {
  16738. return this.getRandomGenerator().integer({
  16739. min: min,
  16740. max: max
  16741. });
  16742. }
  16743. getRandomIntegerExcluding(min, max, valuesToExclude) {
  16744. const valuesToPickArray = [];
  16745. for (let value = min; value <= max; value++) {
  16746. if (valuesToExclude.includes(value)) {
  16747. continue;
  16748. }
  16749. valuesToPickArray.push(value);
  16750. }
  16751. return this.randomGenerator.pickone(valuesToPickArray);
  16752. }
  16753. getRandomString(length, pool = RandomGenerator_1.randomGeneratorPool) {
  16754. return this.getRandomGenerator().string({ length, pool });
  16755. }
  16756. getInputSeed() {
  16757. return this.options.seed.toString();
  16758. }
  16759. getRawSeed() {
  16760. const inputSeed = this.getInputSeed();
  16761. const inputSeedParts = `${inputSeed}`.split('|');
  16762. if (inputSeedParts.length > 1) {
  16763. return inputSeed;
  16764. }
  16765. const sourceCodeMD5Hash = md5_1.default(this.sourceCode.getSourceCode());
  16766. return `${inputSeed}|${sourceCodeMD5Hash}`;
  16767. }
  16768. };
  16769. RandomGenerator.randomGeneratorPool = `${AlphabetString_1.alphabetString}${AlphabetStringUppercase_1.alphabetStringUppercase}`;
  16770. __decorate([
  16771. Initializable_1.initializable(),
  16772. __metadata("design:type", typeof (_a = typeof chance_1.Chance !== "undefined" && chance_1.Chance.Chance) === "function" ? _a : Object)
  16773. ], RandomGenerator.prototype, "randomGenerator", void 0);
  16774. __decorate([
  16775. inversify_1.postConstruct(),
  16776. __metadata("design:type", Function),
  16777. __metadata("design:paramtypes", []),
  16778. __metadata("design:returntype", void 0)
  16779. ], RandomGenerator.prototype, "initialize", null);
  16780. RandomGenerator = RandomGenerator_1 = __decorate([
  16781. inversify_1.injectable(),
  16782. __param(0, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.ISourceCode)),
  16783. __param(1, inversify_1.inject(ServiceIdentifiers_1.ServiceIdentifiers.IOptions)),
  16784. __metadata("design:paramtypes", [typeof (_b = typeof ISourceCode_1.ISourceCode !== "undefined" && ISourceCode_1.ISourceCode) === "function" ? _b : Object, typeof (_c = typeof IOptions_1.IOptions !== "undefined" && IOptions_1.IOptions) === "function" ? _c : Object])
  16785. ], RandomGenerator);
  16786. exports.RandomGenerator = RandomGenerator;
  16787. /***/ }),
  16788. /***/ "./src/utils/StringUtils.ts":
  16789. /*!**********************************!*\
  16790. !*** ./src/utils/StringUtils.ts ***!
  16791. \**********************************/
  16792. /*! unknown exports (runtime-defined) */
  16793. /*! runtime requirements: top-level-this-exports, __webpack_exports__, __webpack_require__ */
  16794. /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
  16795. var __importDefault = (this && this.__importDefault) || function (mod) {
  16796. return (mod && mod.__esModule) ? mod : { "default": mod };
  16797. };
  16798. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16799. exports.StringUtils = void 0;
  16800. const js_string_escape_1 = __importDefault(__webpack_require__(/*! js-string-escape */ "js-string-escape"));
  16801. class StringUtils {
  16802. static escapeJsString(string) {
  16803. return js_string_escape_1.default(string);
  16804. }
  16805. }
  16806. exports.StringUtils = StringUtils;
  16807. /***/ }),
  16808. /***/ "./src/utils/Utils.ts":
  16809. /*!****************************!*\
  16810. !*** ./src/utils/Utils.ts ***!
  16811. \****************************/
  16812. /*! flagged exports */
  16813. /*! export Utils [provided] [no usage info] [missing usage info prevents renaming] */
  16814. /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */
  16815. /*! other exports [not provided] [no usage info] */
  16816. /*! runtime requirements: __webpack_exports__ */
  16817. /***/ ((__unused_webpack_module, exports) => {
  16818. Object.defineProperty(exports, "__esModule", ({ value: true }));
  16819. exports.Utils = void 0;
  16820. class Utils {
  16821. static buildVersionMessage(version, buildTimestamp) {
  16822. if (!version || !buildTimestamp) {
  16823. return 'unknown';
  16824. }
  16825. const buildDate = new Date(parseInt(buildTimestamp, 10)).toISOString();
  16826. return `${version}_${buildDate}`;
  16827. }
  16828. static extractDomainFrom(url) {
  16829. let domain;
  16830. if (url.includes('://') || url.indexOf('//') === 0) {
  16831. domain = url.split('/')[2];
  16832. }
  16833. else {
  16834. domain = url.split('/')[0];
  16835. }
  16836. domain = domain.split(':')[0];
  16837. return domain;
  16838. }
  16839. static getIdentifiersPrefixForMultipleSources(identifiersPrefix, sourceCodeIndex) {
  16840. const baseIdentifiersPrefix = !!identifiersPrefix
  16841. ? identifiersPrefix
  16842. : Utils.baseMultipleSourcesIdentifiersPrefix;
  16843. return `${baseIdentifiersPrefix}${sourceCodeIndex}`;
  16844. }
  16845. static makeEnum(enumLikeObject) {
  16846. return Object.freeze(Object.assign({}, enumLikeObject));
  16847. }
  16848. }
  16849. exports.Utils = Utils;
  16850. Utils.baseMultipleSourcesIdentifiersPrefix = 'a';
  16851. Utils.hexadecimalPrefix = '0x';
  16852. /***/ }),
  16853. /***/ "./src/node-transformers/rename-properties-transformers/replacer/ReservedDomProperties.json":
  16854. /*!**************************************************************************************************!*\
  16855. !*** ./src/node-transformers/rename-properties-transformers/replacer/ReservedDomProperties.json ***!
  16856. \**************************************************************************************************/
  16857. /*! default exports */
  16858. /*! export 0 [provided] [no usage info] [missing usage info prevents renaming] */
  16859. /*! export 1 [provided] [no usage info] [missing usage info prevents renaming] */
  16860. /*! export 10 [provided] [no usage info] [missing usage info prevents renaming] */
  16861. /*! export 100 [provided] [no usage info] [missing usage info prevents renaming] */
  16862. /*! export 1000 [provided] [no usage info] [missing usage info prevents renaming] */
  16863. /*! export 1001 [provided] [no usage info] [missing usage info prevents renaming] */
  16864. /*! export 1002 [provided] [no usage info] [missing usage info prevents renaming] */
  16865. /*! export 1003 [provided] [no usage info] [missing usage info prevents renaming] */
  16866. /*! export 1004 [provided] [no usage info] [missing usage info prevents renaming] */
  16867. /*! export 1005 [provided] [no usage info] [missing usage info prevents renaming] */
  16868. /*! export 1006 [provided] [no usage info] [missing usage info prevents renaming] */
  16869. /*! export 1007 [provided] [no usage info] [missing usage info prevents renaming] */
  16870. /*! export 1008 [provided] [no usage info] [missing usage info prevents renaming] */
  16871. /*! export 1009 [provided] [no usage info] [missing usage info prevents renaming] */
  16872. /*! export 101 [provided] [no usage info] [missing usage info prevents renaming] */
  16873. /*! export 1010 [provided] [no usage info] [missing usage info prevents renaming] */
  16874. /*! export 1011 [provided] [no usage info] [missing usage info prevents renaming] */
  16875. /*! export 1012 [provided] [no usage info] [missing usage info prevents renaming] */
  16876. /*! export 1013 [provided] [no usage info] [missing usage info prevents renaming] */
  16877. /*! export 1014 [provided] [no usage info] [missing usage info prevents renaming] */
  16878. /*! export 1015 [provided] [no usage info] [missing usage info prevents renaming] */
  16879. /*! export 1016 [provided] [no usage info] [missing usage info prevents renaming] */
  16880. /*! export 1017 [provided] [no usage info] [missing usage info prevents renaming] */
  16881. /*! export 1018 [provided] [no usage info] [missing usage info prevents renaming] */
  16882. /*! export 1019 [provided] [no usage info] [missing usage info prevents renaming] */
  16883. /*! export 102 [provided] [no usage info] [missing usage info prevents renaming] */
  16884. /*! export 1020 [provided] [no usage info] [missing usage info prevents renaming] */
  16885. /*! export 1021 [provided] [no usage info] [missing usage info prevents renaming] */
  16886. /*! export 1022 [provided] [no usage info] [missing usage info prevents renaming] */
  16887. /*! export 1023 [provided] [no usage info] [missing usage info prevents renaming] */
  16888. /*! export 1024 [provided] [no usage info] [missing usage info prevents renaming] */
  16889. /*! export 1025 [provided] [no usage info] [missing usage info prevents renaming] */
  16890. /*! export 1026 [provided] [no usage info] [missing usage info prevents renaming] */
  16891. /*! export 1027 [provided] [no usage info] [missing usage info prevents renaming] */
  16892. /*! export 1028 [provided] [no usage info] [missing usage info prevents renaming] */
  16893. /*! export 1029 [provided] [no usage info] [missing usage info prevents renaming] */
  16894. /*! export 103 [provided] [no usage info] [missing usage info prevents renaming] */
  16895. /*! export 1030 [provided] [no usage info] [missing usage info prevents renaming] */
  16896. /*! export 1031 [provided] [no usage info] [missing usage info prevents renaming] */
  16897. /*! export 1032 [provided] [no usage info] [missing usage info prevents renaming] */
  16898. /*! export 1033 [provided] [no usage info] [missing usage info prevents renaming] */
  16899. /*! export 1034 [provided] [no usage info] [missing usage info prevents renaming] */
  16900. /*! export 1035 [provided] [no usage info] [missing usage info prevents renaming] */
  16901. /*! export 1036 [provided] [no usage info] [missing usage info prevents renaming] */
  16902. /*! export 1037 [provided] [no usage info] [missing usage info prevents renaming] */
  16903. /*! export 1038 [provided] [no usage info] [missing usage info prevents renaming] */
  16904. /*! export 1039 [provided] [no usage info] [missing usage info prevents renaming] */
  16905. /*! export 104 [provided] [no usage info] [missing usage info prevents renaming] */
  16906. /*! export 1040 [provided] [no usage info] [missing usage info prevents renaming] */
  16907. /*! export 1041 [provided] [no usage info] [missing usage info prevents renaming] */
  16908. /*! export 1042 [provided] [no usage info] [missing usage info prevents renaming] */
  16909. /*! export 1043 [provided] [no usage info] [missing usage info prevents renaming] */
  16910. /*! export 1044 [provided] [no usage info] [missing usage info prevents renaming] */
  16911. /*! export 1045 [provided] [no usage info] [missing usage info prevents renaming] */
  16912. /*! export 1046 [provided] [no usage info] [missing usage info prevents renaming] */
  16913. /*! export 1047 [provided] [no usage info] [missing usage info prevents renaming] */
  16914. /*! export 1048 [provided] [no usage info] [missing usage info prevents renaming] */
  16915. /*! export 1049 [provided] [no usage info] [missing usage info prevents renaming] */
  16916. /*! export 105 [provided] [no usage info] [missing usage info prevents renaming] */
  16917. /*! export 1050 [provided] [no usage info] [missing usage info prevents renaming] */
  16918. /*! export 1051 [provided] [no usage info] [missing usage info prevents renaming] */
  16919. /*! export 1052 [provided] [no usage info] [missing usage info prevents renaming] */
  16920. /*! export 1053 [provided] [no usage info] [missing usage info prevents renaming] */
  16921. /*! export 1054 [provided] [no usage info] [missing usage info prevents renaming] */
  16922. /*! export 1055 [provided] [no usage info] [missing usage info prevents renaming] */
  16923. /*! export 1056 [provided] [no usage info] [missing usage info prevents renaming] */
  16924. /*! export 1057 [provided] [no usage info] [missing usage info prevents renaming] */
  16925. /*! export 1058 [provided] [no usage info] [missing usage info prevents renaming] */
  16926. /*! export 1059 [provided] [no usage info] [missing usage info prevents renaming] */
  16927. /*! export 106 [provided] [no usage info] [missing usage info prevents renaming] */
  16928. /*! export 1060 [provided] [no usage info] [missing usage info prevents renaming] */
  16929. /*! export 1061 [provided] [no usage info] [missing usage info prevents renaming] */
  16930. /*! export 1062 [provided] [no usage info] [missing usage info prevents renaming] */
  16931. /*! export 1063 [provided] [no usage info] [missing usage info prevents renaming] */
  16932. /*! export 1064 [provided] [no usage info] [missing usage info prevents renaming] */
  16933. /*! export 1065 [provided] [no usage info] [missing usage info prevents renaming] */
  16934. /*! export 1066 [provided] [no usage info] [missing usage info prevents renaming] */
  16935. /*! export 1067 [provided] [no usage info] [missing usage info prevents renaming] */
  16936. /*! export 1068 [provided] [no usage info] [missing usage info prevents renaming] */
  16937. /*! export 1069 [provided] [no usage info] [missing usage info prevents renaming] */
  16938. /*! export 107 [provided] [no usage info] [missing usage info prevents renaming] */
  16939. /*! export 1070 [provided] [no usage info] [missing usage info prevents renaming] */
  16940. /*! export 1071 [provided] [no usage info] [missing usage info prevents renaming] */
  16941. /*! export 1072 [provided] [no usage info] [missing usage info prevents renaming] */
  16942. /*! export 1073 [provided] [no usage info] [missing usage info prevents renaming] */
  16943. /*! export 1074 [provided] [no usage info] [missing usage info prevents renaming] */
  16944. /*! export 1075 [provided] [no usage info] [missing usage info prevents renaming] */
  16945. /*! export 1076 [provided] [no usage info] [missing usage info prevents renaming] */
  16946. /*! export 1077 [provided] [no usage info] [missing usage info prevents renaming] */
  16947. /*! export 1078 [provided] [no usage info] [missing usage info prevents renaming] */
  16948. /*! export 1079 [provided] [no usage info] [missing usage info prevents renaming] */
  16949. /*! export 108 [provided] [no usage info] [missing usage info prevents renaming] */
  16950. /*! export 1080 [provided] [no usage info] [missing usage info prevents renaming] */
  16951. /*! export 1081 [provided] [no usage info] [missing usage info prevents renaming] */
  16952. /*! export 1082 [provided] [no usage info] [missing usage info prevents renaming] */
  16953. /*! export 1083 [provided] [no usage info] [missing usage info prevents renaming] */
  16954. /*! export 1084 [provided] [no usage info] [missing usage info prevents renaming] */
  16955. /*! export 1085 [provided] [no usage info] [missing usage info prevents renaming] */
  16956. /*! export 1086 [provided] [no usage info] [missing usage info prevents renaming] */
  16957. /*! export 1087 [provided] [no usage info] [missing usage info prevents renaming] */
  16958. /*! export 1088 [provided] [no usage info] [missing usage info prevents renaming] */
  16959. /*! export 1089 [provided] [no usage info] [missing usage info prevents renaming] */
  16960. /*! export 109 [provided] [no usage info] [missing usage info prevents renaming] */
  16961. /*! export 1090 [provided] [no usage info] [missing usage info prevents renaming] */
  16962. /*! export 1091 [provided] [no usage info] [missing usage info prevents renaming] */
  16963. /*! export 1092 [provided] [no usage info] [missing usage info prevents renaming] */
  16964. /*! export 1093 [provided] [no usage info] [missing usage info prevents renaming] */
  16965. /*! export 1094 [provided] [no usage info] [missing usage info prevents renaming] */
  16966. /*! export 1095 [provided] [no usage info] [missing usage info prevents renaming] */
  16967. /*! export 1096 [provided] [no usage info] [missing usage info prevents renaming] */
  16968. /*! export 1097 [provided] [no usage info] [missing usage info prevents renaming] */
  16969. /*! export 1098 [provided] [no usage info] [missing usage info prevents renaming] */
  16970. /*! export 1099 [provided] [no usage info] [missing usage info prevents renaming] */
  16971. /*! export 11 [provided] [no usage info] [missing usage info prevents renaming] */
  16972. /*! export 110 [provided] [no usage info] [missing usage info prevents renaming] */
  16973. /*! export 1100 [provided] [no usage info] [missing usage info prevents renaming] */
  16974. /*! export 1101 [provided] [no usage info] [missing usage info prevents renaming] */
  16975. /*! export 1102 [provided] [no usage info] [missing usage info prevents renaming] */
  16976. /*! export 1103 [provided] [no usage info] [missing usage info prevents renaming] */
  16977. /*! export 1104 [provided] [no usage info] [missing usage info prevents renaming] */
  16978. /*! export 1105 [provided] [no usage info] [missing usage info prevents renaming] */
  16979. /*! export 1106 [provided] [no usage info] [missing usage info prevents renaming] */
  16980. /*! export 1107 [provided] [no usage info] [missing usage info prevents renaming] */
  16981. /*! export 1108 [provided] [no usage info] [missing usage info prevents renaming] */
  16982. /*! export 1109 [provided] [no usage info] [missing usage info prevents renaming] */
  16983. /*! export 111 [provided] [no usage info] [missing usage info prevents renaming] */
  16984. /*! export 1110 [provided] [no usage info] [missing usage info prevents renaming] */
  16985. /*! export 1111 [provided] [no usage info] [missing usage info prevents renaming] */
  16986. /*! export 1112 [provided] [no usage info] [missing usage info prevents renaming] */
  16987. /*! export 1113 [provided] [no usage info] [missing usage info prevents renaming] */
  16988. /*! export 1114 [provided] [no usage info] [missing usage info prevents renaming] */
  16989. /*! export 1115 [provided] [no usage info] [missing usage info prevents renaming] */
  16990. /*! export 1116 [provided] [no usage info] [missing usage info prevents renaming] */
  16991. /*! export 1117 [provided] [no usage info] [missing usage info prevents renaming] */
  16992. /*! export 1118 [provided] [no usage info] [missing usage info prevents renaming] */
  16993. /*! export 1119 [provided] [no usage info] [missing usage info prevents renaming] */
  16994. /*! export 112 [provided] [no usage info] [missing usage info prevents renaming] */
  16995. /*! export 1120 [provided] [no usage info] [missing usage info prevents renaming] */
  16996. /*! export 1121 [provided] [no usage info] [missing usage info prevents renaming] */
  16997. /*! export 1122 [provided] [no usage info] [missing usage info prevents renaming] */
  16998. /*! export 1123 [provided] [no usage info] [missing usage info prevents renaming] */
  16999. /*! export 1124 [provided] [no usage info] [missing usage info prevents renaming] */
  17000. /*! export 1125 [provided] [no usage info] [missing usage info prevents renaming] */
  17001. /*! export 1126 [provided] [no usage info] [missing usage info prevents renaming] */
  17002. /*! export 1127 [provided] [no usage info] [missing usage info prevents renaming] */
  17003. /*! export 1128 [provided] [no usage info] [missing usage info prevents renaming] */
  17004. /*! export 1129 [provided] [no usage info] [missing usage info prevents renaming] */
  17005. /*! export 113 [provided] [no usage info] [missing usage info prevents renaming] */
  17006. /*! export 1130 [provided] [no usage info] [missing usage info prevents renaming] */
  17007. /*! export 1131 [provided] [no usage info] [missing usage info prevents renaming] */
  17008. /*! export 1132 [provided] [no usage info] [missing usage info prevents renaming] */
  17009. /*! export 1133 [provided] [no usage info] [missing usage info prevents renaming] */
  17010. /*! export 1134 [provided] [no usage info] [missing usage info prevents renaming] */
  17011. /*! export 1135 [provided] [no usage info] [missing usage info prevents renaming] */
  17012. /*! export 1136 [provided] [no usage info] [missing usage info prevents renaming] */
  17013. /*! export 1137 [provided] [no usage info] [missing usage info prevents renaming] */
  17014. /*! export 1138 [provided] [no usage info] [missing usage info prevents renaming] */
  17015. /*! export 1139 [provided] [no usage info] [missing usage info prevents renaming] */
  17016. /*! export 114 [provided] [no usage info] [missing usage info prevents renaming] */
  17017. /*! export 1140 [provided] [no usage info] [missing usage info prevents renaming] */
  17018. /*! export 1141 [provided] [no usage info] [missing usage info prevents renaming] */
  17019. /*! export 1142 [provided] [no usage info] [missing usage info prevents renaming] */
  17020. /*! export 1143 [provided] [no usage info] [missing usage info prevents renaming] */
  17021. /*! export 1144 [provided] [no usage info] [missing usage info prevents renaming] */
  17022. /*! export 1145 [provided] [no usage info] [missing usage info prevents renaming] */
  17023. /*! export 1146 [provided] [no usage info] [missing usage info prevents renaming] */
  17024. /*! export 1147 [provided] [no usage info] [missing usage info prevents renaming] */
  17025. /*! export 1148 [provided] [no usage info] [missing usage info prevents renaming] */
  17026. /*! export 1149 [provided] [no usage info] [missing usage info prevents renaming] */
  17027. /*! export 115 [provided] [no usage info] [missing usage info prevents renaming] */
  17028. /*! export 1150 [provided] [no usage info] [missing usage info prevents renaming] */
  17029. /*! export 1151 [provided] [no usage info] [missing usage info prevents renaming] */
  17030. /*! export 1152 [provided] [no usage info] [missing usage info prevents renaming] */
  17031. /*! export 1153 [provided] [no usage info] [missing usage info prevents renaming] */
  17032. /*! export 1154 [provided] [no usage info] [missing usage info prevents renaming] */
  17033. /*! export 1155 [provided] [no usage info] [missing usage info prevents renaming] */
  17034. /*! export 1156 [provided] [no usage info] [missing usage info prevents renaming] */
  17035. /*! export 1157 [provided] [no usage info] [missing usage info prevents renaming] */
  17036. /*! export 1158 [provided] [no usage info] [missing usage info prevents renaming] */
  17037. /*! export 1159 [provided] [no usage info] [missing usage info prevents renaming] */
  17038. /*! export 116 [provided] [no usage info] [missing usage info prevents renaming] */
  17039. /*! export 1160 [provided] [no usage info] [missing usage info prevents renaming] */
  17040. /*! export 1161 [provided] [no usage info] [missing usage info prevents renaming] */
  17041. /*! export 1162 [provided] [no usage info] [missing usage info prevents renaming] */
  17042. /*! export 1163 [provided] [no usage info] [missing usage info prevents renaming] */
  17043. /*! export 1164 [provided] [no usage info] [missing usage info prevents renaming] */
  17044. /*! export 1165 [provided] [no usage info] [missing usage info prevents renaming] */
  17045. /*! export 1166 [provided] [no usage info] [missing usage info prevents renaming] */
  17046. /*! export 1167 [provided] [no usage info] [missing usage info prevents renaming] */
  17047. /*! export 1168 [provided] [no usage info] [missing usage info prevents renaming] */
  17048. /*! export 1169 [provided] [no usage info] [missing usage info prevents renaming] */
  17049. /*! export 117 [provided] [no usage info] [missing usage info prevents renaming] */
  17050. /*! export 1170 [provided] [no usage info] [missing usage info prevents renaming] */
  17051. /*! export 1171 [provided] [no usage info] [missing usage info prevents renaming] */
  17052. /*! export 1172 [provided] [no usage info] [missing usage info prevents renaming] */
  17053. /*! export 1173 [provided] [no usage info] [missing usage info prevents renaming] */
  17054. /*! export 1174 [provided] [no usage info] [missing usage info prevents renaming] */
  17055. /*! export 1175 [provided] [no usage info] [missing usage info prevents renaming] */
  17056. /*! export 1176 [provided] [no usage info] [missing usage info prevents renaming] */
  17057. /*! export 1177 [provided] [no usage info] [missing usage info prevents renaming] */
  17058. /*! export 1178 [provided] [no usage info] [missing usage info prevents renaming] */
  17059. /*! export 1179 [provided] [no usage info] [missing usage info prevents renaming] */
  17060. /*! export 118 [provided] [no usage info] [missing usage info prevents renaming] */
  17061. /*! export 1180 [provided] [no usage info] [missing usage info prevents renaming] */
  17062. /*! export 1181 [provided] [no usage info] [missing usage info prevents renaming] */
  17063. /*! export 1182 [provided] [no usage info] [missing usage info prevents renaming] */
  17064. /*! export 1183 [provided] [no usage info] [missing usage info prevents renaming] */
  17065. /*! export 1184 [provided] [no usage info] [missing usage info prevents renaming] */
  17066. /*! export 1185 [provided] [no usage info] [missing usage info prevents renaming] */
  17067. /*! export 1186 [provided] [no usage info] [missing usage info prevents renaming] */
  17068. /*! export 1187 [provided] [no usage info] [missing usage info prevents renaming] */
  17069. /*! export 1188 [provided] [no usage info] [missing usage info prevents renaming] */
  17070. /*! export 1189 [provided] [no usage info] [missing usage info prevents renaming] */
  17071. /*! export 119 [provided] [no usage info] [missing usage info prevents renaming] */
  17072. /*! export 1190 [provided] [no usage info] [missing usage info prevents renaming] */
  17073. /*! export 1191 [provided] [no usage info] [missing usage info prevents renaming] */
  17074. /*! export 1192 [provided] [no usage info] [missing usage info prevents renaming] */
  17075. /*! export 1193 [provided] [no usage info] [missing usage info prevents renaming] */
  17076. /*! export 1194 [provided] [no usage info] [missing usage info prevents renaming] */
  17077. /*! export 1195 [provided] [no usage info] [missing usage info prevents renaming] */
  17078. /*! export 1196 [provided] [no usage info] [missing usage info prevents renaming] */
  17079. /*! export 1197 [provided] [no usage info] [missing usage info prevents renaming] */
  17080. /*! export 1198 [provided] [no usage info] [missing usage info prevents renaming] */
  17081. /*! export 1199 [provided] [no usage info] [missing usage info prevents renaming] */
  17082. /*! export 12 [provided] [no usage info] [missing usage info prevents renaming] */
  17083. /*! export 120 [provided] [no usage info] [missing usage info prevents renaming] */
  17084. /*! export 1200 [provided] [no usage info] [missing usage info prevents renaming] */
  17085. /*! export 1201 [provided] [no usage info] [missing usage info prevents renaming] */
  17086. /*! export 1202 [provided] [no usage info] [missing usage info prevents renaming] */
  17087. /*! export 1203 [provided] [no usage info] [missing usage info prevents renaming] */
  17088. /*! export 1204 [provided] [no usage info] [missing usage info prevents renaming] */
  17089. /*! export 1205 [provided] [no usage info] [missing usage info prevents renaming] */
  17090. /*! export 1206 [provided] [no usage info] [missing usage info prevents renaming] */
  17091. /*! export 1207 [provided] [no usage info] [missing usage info prevents renaming] */
  17092. /*! export 1208 [provided] [no usage info] [missing usage info prevents renaming] */
  17093. /*! export 1209 [provided] [no usage info] [missing usage info prevents renaming] */
  17094. /*! export 121 [provided] [no usage info] [missing usage info prevents renaming] */
  17095. /*! export 1210 [provided] [no usage info] [missing usage info prevents renaming] */
  17096. /*! export 1211 [provided] [no usage info] [missing usage info prevents renaming] */
  17097. /*! export 1212 [provided] [no usage info] [missing usage info prevents renaming] */
  17098. /*! export 1213 [provided] [no usage info] [missing usage info prevents renaming] */
  17099. /*! export 1214 [provided] [no usage info] [missing usage info prevents renaming] */
  17100. /*! export 1215 [provided] [no usage info] [missing usage info prevents renaming] */
  17101. /*! export 1216 [provided] [no usage info] [missing usage info prevents renaming] */
  17102. /*! export 1217 [provided] [no usage info] [missing usage info prevents renaming] */
  17103. /*! export 1218 [provided] [no usage info] [missing usage info prevents renaming] */
  17104. /*! export 1219 [provided] [no usage info] [missing usage info prevents renaming] */
  17105. /*! export 122 [provided] [no usage info] [missing usage info prevents renaming] */
  17106. /*! export 1220 [provided] [no usage info] [missing usage info prevents renaming] */
  17107. /*! export 1221 [provided] [no usage info] [missing usage info prevents renaming] */
  17108. /*! export 1222 [provided] [no usage info] [missing usage info prevents renaming] */
  17109. /*! export 1223 [provided] [no usage info] [missing usage info prevents renaming] */
  17110. /*! export 1224 [provided] [no usage info] [missing usage info prevents renaming] */
  17111. /*! export 1225 [provided] [no usage info] [missing usage info prevents renaming] */
  17112. /*! export 1226 [provided] [no usage info] [missing usage info prevents renaming] */
  17113. /*! export 1227 [provided] [no usage info] [missing usage info prevents renaming] */
  17114. /*! export 1228 [provided] [no usage info] [missing usage info prevents renaming] */
  17115. /*! export 1229 [provided] [no usage info] [missing usage info prevents renaming] */
  17116. /*! export 123 [provided] [no usage info] [missing usage info prevents renaming] */
  17117. /*! export 1230 [provided] [no usage info] [missing usage info prevents renaming] */
  17118. /*! export 1231 [provided] [no usage info] [missing usage info prevents renaming] */
  17119. /*! export 1232 [provided] [no usage info] [missing usage info prevents renaming] */
  17120. /*! export 1233 [provided] [no usage info] [missing usage info prevents renaming] */
  17121. /*! export 1234 [provided] [no usage info] [missing usage info prevents renaming] */
  17122. /*! export 1235 [provided] [no usage info] [missing usage info prevents renaming] */
  17123. /*! export 1236 [provided] [no usage info] [missing usage info prevents renaming] */
  17124. /*! export 1237 [provided] [no usage info] [missing usage info prevents renaming] */
  17125. /*! export 1238 [provided] [no usage info] [missing usage info prevents renaming] */
  17126. /*! export 1239 [provided] [no usage info] [missing usage info prevents renaming] */
  17127. /*! export 124 [provided] [no usage info] [missing usage info prevents renaming] */
  17128. /*! export 1240 [provided] [no usage info] [missing usage info prevents renaming] */
  17129. /*! export 1241 [provided] [no usage info] [missing usage info prevents renaming] */
  17130. /*! export 1242 [provided] [no usage info] [missing usage info prevents renaming] */
  17131. /*! export 1243 [provided] [no usage info] [missing usage info prevents renaming] */
  17132. /*! export 1244 [provided] [no usage info] [missing usage info prevents renaming] */
  17133. /*! export 1245 [provided] [no usage info] [missing usage info prevents renaming] */
  17134. /*! export 1246 [provided] [no usage info] [missing usage info prevents renaming] */
  17135. /*! export 1247 [provided] [no usage info] [missing usage info prevents renaming] */
  17136. /*! export 1248 [provided] [no usage info] [missing usage info prevents renaming] */
  17137. /*! export 1249 [provided] [no usage info] [missing usage info prevents renaming] */
  17138. /*! export 125 [provided] [no usage info] [missing usage info prevents renaming] */
  17139. /*! export 1250 [provided] [no usage info] [missing usage info prevents renaming] */
  17140. /*! export 1251 [provided] [no usage info] [missing usage info prevents renaming] */
  17141. /*! export 1252 [provided] [no usage info] [missing usage info prevents renaming] */
  17142. /*! export 1253 [provided] [no usage info] [missing usage info prevents renaming] */
  17143. /*! export 1254 [provided] [no usage info] [missing usage info prevents renaming] */
  17144. /*! export 1255 [provided] [no usage info] [missing usage info prevents renaming] */
  17145. /*! export 1256 [provided] [no usage info] [missing usage info prevents renaming] */
  17146. /*! export 1257 [provided] [no usage info] [missing usage info prevents renaming] */
  17147. /*! export 1258 [provided] [no usage info] [missing usage info prevents renaming] */
  17148. /*! export 1259 [provided] [no usage info] [missing usage info prevents renaming] */
  17149. /*! export 126 [provided] [no usage info] [missing usage info prevents renaming] */
  17150. /*! export 1260 [provided] [no usage info] [missing usage info prevents renaming] */
  17151. /*! export 1261 [provided] [no usage info] [missing usage info prevents renaming] */
  17152. /*! export 1262 [provided] [no usage info] [missing usage info prevents renaming] */
  17153. /*! export 1263 [provided] [no usage info] [missing usage info prevents renaming] */
  17154. /*! export 1264 [provided] [no usage info] [missing usage info prevents renaming] */
  17155. /*! export 1265 [provided] [no usage info] [missing usage info prevents renaming] */
  17156. /*! export 1266 [provided] [no usage info] [missing usage info prevents renaming] */
  17157. /*! export 1267 [provided] [no usage info] [missing usage info prevents renaming] */
  17158. /*! export 1268 [provided] [no usage info] [missing usage info prevents renaming] */
  17159. /*! export 1269 [provided] [no usage info] [missing usage info prevents renaming] */
  17160. /*! export 127 [provided] [no usage info] [missing usage info prevents renaming] */
  17161. /*! export 1270 [provided] [no usage info] [missing usage info prevents renaming] */
  17162. /*! export 1271 [provided] [no usage info] [missing usage info prevents renaming] */
  17163. /*! export 1272 [provided] [no usage info] [missing usage info prevents renaming] */
  17164. /*! export 1273 [provided] [no usage info] [missing usage info prevents renaming] */
  17165. /*! export 1274 [provided] [no usage info] [missing usage info prevents renaming] */
  17166. /*! export 1275 [provided] [no usage info] [missing usage info prevents renaming] */
  17167. /*! export 1276 [provided] [no usage info] [missing usage info prevents renaming] */
  17168. /*! export 1277 [provided] [no usage info] [missing usage info prevents renaming] */
  17169. /*! export 1278 [provided] [no usage info] [missing usage info prevents renaming] */
  17170. /*! export 1279 [provided] [no usage info] [missing usage info prevents renaming] */
  17171. /*! export 128 [provided] [no usage info] [missing usage info prevents renaming] */
  17172. /*! export 1280 [provided] [no usage info] [missing usage info prevents renaming] */
  17173. /*! export 1281 [provided] [no usage info] [missing usage info prevents renaming] */
  17174. /*! export 1282 [provided] [no usage info] [missing usage info prevents renaming] */
  17175. /*! export 1283 [provided] [no usage info] [missing usage info prevents renaming] */
  17176. /*! export 1284 [provided] [no usage info] [missing usage info prevents renaming] */
  17177. /*! export 1285 [provided] [no usage info] [missing usage info prevents renaming] */
  17178. /*! export 1286 [provided] [no usage info] [missing usage info prevents renaming] */
  17179. /*! export 1287 [provided] [no usage info] [missing usage info prevents renaming] */
  17180. /*! export 1288 [provided] [no usage info] [missing usage info prevents renaming] */
  17181. /*! export 1289 [provided] [no usage info] [missing usage info prevents renaming] */
  17182. /*! export 129 [provided] [no usage info] [missing usage info prevents renaming] */
  17183. /*! export 1290 [provided] [no usage info] [missing usage info prevents renaming] */
  17184. /*! export 1291 [provided] [no usage info] [missing usage info prevents renaming] */
  17185. /*! export 1292 [provided] [no usage info] [missing usage info prevents renaming] */
  17186. /*! export 1293 [provided] [no usage info] [missing usage info prevents renaming] */
  17187. /*! export 1294 [provided] [no usage info] [missing usage info prevents renaming] */
  17188. /*! export 1295 [provided] [no usage info] [missing usage info prevents renaming] */
  17189. /*! export 1296 [provided] [no usage info] [missing usage info prevents renaming] */
  17190. /*! export 1297 [provided] [no usage info] [missing usage info prevents renaming] */
  17191. /*! export 1298 [provided] [no usage info] [missing usage info prevents renaming] */
  17192. /*! export 1299 [provided] [no usage info] [missing usage info prevents renaming] */
  17193. /*! export 13 [provided] [no usage info] [missing usage info prevents renaming] */
  17194. /*! export 130 [provided] [no usage info] [missing usage info prevents renaming] */
  17195. /*! export 1300 [provided] [no usage info] [missing usage info prevents renaming] */
  17196. /*! export 1301 [provided] [no usage info] [missing usage info prevents renaming] */
  17197. /*! export 1302 [provided] [no usage info] [missing usage info prevents renaming] */
  17198. /*! export 1303 [provided] [no usage info] [missing usage info prevents renaming] */
  17199. /*! export 1304 [provided] [no usage info] [missing usage info prevents renaming] */
  17200. /*! export 1305 [provided] [no usage info] [missing usage info prevents renaming] */
  17201. /*! export 1306 [provided] [no usage info] [missing usage info prevents renaming] */
  17202. /*! export 1307 [provided] [no usage info] [missing usage info prevents renaming] */
  17203. /*! export 1308 [provided] [no usage info] [missing usage info prevents renaming] */
  17204. /*! export 1309 [provided] [no usage info] [missing usage info prevents renaming] */
  17205. /*! export 131 [provided] [no usage info] [missing usage info prevents renaming] */
  17206. /*! export 1310 [provided] [no usage info] [missing usage info prevents renaming] */
  17207. /*! export 1311 [provided] [no usage info] [missing usage info prevents renaming] */
  17208. /*! export 1312 [provided] [no usage info] [missing usage info prevents renaming] */
  17209. /*! export 1313 [provided] [no usage info] [missing usage info prevents renaming] */
  17210. /*! export 1314 [provided] [no usage info] [missing usage info prevents renaming] */
  17211. /*! export 1315 [provided] [no usage info] [missing usage info prevents renaming] */
  17212. /*! export 1316 [provided] [no usage info] [missing usage info prevents renaming] */
  17213. /*! export 1317 [provided] [no usage info] [missing usage info prevents renaming] */
  17214. /*! export 1318 [provided] [no usage info] [missing usage info prevents renaming] */
  17215. /*! export 1319 [provided] [no usage info] [missing usage info prevents renaming] */
  17216. /*! export 132 [provided] [no usage info] [missing usage info prevents renaming] */
  17217. /*! export 1320 [provided] [no usage info] [missing usage info prevents renaming] */
  17218. /*! export 1321 [provided] [no usage info] [missing usage info prevents renaming] */
  17219. /*! export 1322 [provided] [no usage info] [missing usage info prevents renaming] */
  17220. /*! export 1323 [provided] [no usage info] [missing usage info prevents renaming] */
  17221. /*! export 1324 [provided] [no usage info] [missing usage info prevents renaming] */
  17222. /*! export 1325 [provided] [no usage info] [missing usage info prevents renaming] */
  17223. /*! export 1326 [provided] [no usage info] [missing usage info prevents renaming] */
  17224. /*! export 1327 [provided] [no usage info] [missing usage info prevents renaming] */
  17225. /*! export 1328 [provided] [no usage info] [missing usage info prevents renaming] */
  17226. /*! export 1329 [provided] [no usage info] [missing usage info prevents renaming] */
  17227. /*! export 133 [provided] [no usage info] [missing usage info prevents renaming] */
  17228. /*! export 1330 [provided] [no usage info] [missing usage info prevents renaming] */
  17229. /*! export 1331 [provided] [no usage info] [missing usage info prevents renaming] */
  17230. /*! export 1332 [provided] [no usage info] [missing usage info prevents renaming] */
  17231. /*! export 1333 [provided] [no usage info] [missing usage info prevents renaming] */
  17232. /*! export 1334 [provided] [no usage info] [missing usage info prevents renaming] */
  17233. /*! export 1335 [provided] [no usage info] [missing usage info prevents renaming] */
  17234. /*! export 1336 [provided] [no usage info] [missing usage info prevents renaming] */
  17235. /*! export 1337 [provided] [no usage info] [missing usage info prevents renaming] */
  17236. /*! export 1338 [provided] [no usage info] [missing usage info prevents renaming] */
  17237. /*! export 1339 [provided] [no usage info] [missing usage info prevents renaming] */
  17238. /*! export 134 [provided] [no usage info] [missing usage info prevents renaming] */
  17239. /*! export 1340 [provided] [no usage info] [missing usage info prevents renaming] */
  17240. /*! export 1341 [provided] [no usage info] [missing usage info prevents renaming] */
  17241. /*! export 1342 [provided] [no usage info] [missing usage info prevents renaming] */
  17242. /*! export 1343 [provided] [no usage info] [missing usage info prevents renaming] */
  17243. /*! export 1344 [provided] [no usage info] [missing usage info prevents renaming] */
  17244. /*! export 1345 [provided] [no usage info] [missing usage info prevents renaming] */
  17245. /*! export 1346 [provided] [no usage info] [missing usage info prevents renaming] */
  17246. /*! export 1347 [provided] [no usage info] [missing usage info prevents renaming] */
  17247. /*! export 1348 [provided] [no usage info] [missing usage info prevents renaming] */
  17248. /*! export 1349 [provided] [no usage info] [missing usage info prevents renaming] */
  17249. /*! export 135 [provided] [no usage info] [missing usage info prevents renaming] */
  17250. /*! export 1350 [provided] [no usage info] [missing usage info prevents renaming] */
  17251. /*! export 1351 [provided] [no usage info] [missing usage info prevents renaming] */
  17252. /*! export 1352 [provided] [no usage info] [missing usage info prevents renaming] */
  17253. /*! export 1353 [provided] [no usage info] [missing usage info prevents renaming] */
  17254. /*! export 1354 [provided] [no usage info] [missing usage info prevents renaming] */
  17255. /*! export 1355 [provided] [no usage info] [missing usage info prevents renaming] */
  17256. /*! export 1356 [provided] [no usage info] [missing usage info prevents renaming] */
  17257. /*! export 1357 [provided] [no usage info] [missing usage info prevents renaming] */
  17258. /*! export 1358 [provided] [no usage info] [missing usage info prevents renaming] */
  17259. /*! export 1359 [provided] [no usage info] [missing usage info prevents renaming] */
  17260. /*! export 136 [provided] [no usage info] [missing usage info prevents renaming] */
  17261. /*! export 1360 [provided] [no usage info] [missing usage info prevents renaming] */
  17262. /*! export 1361 [provided] [no usage info] [missing usage info prevents renaming] */
  17263. /*! export 1362 [provided] [no usage info] [missing usage info prevents renaming] */
  17264. /*! export 1363 [provided] [no usage info] [missing usage info prevents renaming] */
  17265. /*! export 1364 [provided] [no usage info] [missing usage info prevents renaming] */
  17266. /*! export 1365 [provided] [no usage info] [missing usage info prevents renaming] */
  17267. /*! export 1366 [provided] [no usage info] [missing usage info prevents renaming] */
  17268. /*! export 1367 [provided] [no usage info] [missing usage info prevents renaming] */
  17269. /*! export 1368 [provided] [no usage info] [missing usage info prevents renaming] */
  17270. /*! export 1369 [provided] [no usage info] [missing usage info prevents renaming] */
  17271. /*! export 137 [provided] [no usage info] [missing usage info prevents renaming] */
  17272. /*! export 1370 [provided] [no usage info] [missing usage info prevents renaming] */
  17273. /*! export 1371 [provided] [no usage info] [missing usage info prevents renaming] */
  17274. /*! export 1372 [provided] [no usage info] [missing usage info prevents renaming] */
  17275. /*! export 1373 [provided] [no usage info] [missing usage info prevents renaming] */
  17276. /*! export 1374 [provided] [no usage info] [missing usage info prevents renaming] */
  17277. /*! export 1375 [provided] [no usage info] [missing usage info prevents renaming] */
  17278. /*! export 1376 [provided] [no usage info] [missing usage info prevents renaming] */
  17279. /*! export 1377 [provided] [no usage info] [missing usage info prevents renaming] */
  17280. /*! export 1378 [provided] [no usage info] [missing usage info prevents renaming] */
  17281. /*! export 1379 [provided] [no usage info] [missing usage info prevents renaming] */
  17282. /*! export 138 [provided] [no usage info] [missing usage info prevents renaming] */
  17283. /*! export 1380 [provided] [no usage info] [missing usage info prevents renaming] */
  17284. /*! export 1381 [provided] [no usage info] [missing usage info prevents renaming] */
  17285. /*! export 1382 [provided] [no usage info] [missing usage info prevents renaming] */
  17286. /*! export 1383 [provided] [no usage info] [missing usage info prevents renaming] */
  17287. /*! export 1384 [provided] [no usage info] [missing usage info prevents renaming] */
  17288. /*! export 1385 [provided] [no usage info] [missing usage info prevents renaming] */
  17289. /*! export 1386 [provided] [no usage info] [missing usage info prevents renaming] */
  17290. /*! export 1387 [provided] [no usage info] [missing usage info prevents renaming] */
  17291. /*! export 1388 [provided] [no usage info] [missing usage info prevents renaming] */
  17292. /*! export 1389 [provided] [no usage info] [missing usage info prevents renaming] */
  17293. /*! export 139 [provided] [no usage info] [missing usage info prevents renaming] */
  17294. /*! export 1390 [provided] [no usage info] [missing usage info prevents renaming] */
  17295. /*! export 1391 [provided] [no usage info] [missing usage info prevents renaming] */
  17296. /*! export 1392 [provided] [no usage info] [missing usage info prevents renaming] */
  17297. /*! export 1393 [provided] [no usage info] [missing usage info prevents renaming] */
  17298. /*! export 1394 [provided] [no usage info] [missing usage info prevents renaming] */
  17299. /*! export 1395 [provided] [no usage info] [missing usage info prevents renaming] */
  17300. /*! export 1396 [provided] [no usage info] [missing usage info prevents renaming] */
  17301. /*! export 1397 [provided] [no usage info] [missing usage info prevents renaming] */
  17302. /*! export 1398 [provided] [no usage info] [missing usage info prevents renaming] */
  17303. /*! export 1399 [provided] [no usage info] [missing usage info prevents renaming] */
  17304. /*! export 14 [provided] [no usage info] [missing usage info prevents renaming] */
  17305. /*! export 140 [provided] [no usage info] [missing usage info prevents renaming] */
  17306. /*! export 1400 [provided] [no usage info] [missing usage info prevents renaming] */
  17307. /*! export 1401 [provided] [no usage info] [missing usage info prevents renaming] */
  17308. /*! export 1402 [provided] [no usage info] [missing usage info prevents renaming] */
  17309. /*! export 1403 [provided] [no usage info] [missing usage info prevents renaming] */
  17310. /*! export 1404 [provided] [no usage info] [missing usage info prevents renaming] */
  17311. /*! export 1405 [provided] [no usage info] [missing usage info prevents renaming] */
  17312. /*! export 1406 [provided] [no usage info] [missing usage info prevents renaming] */
  17313. /*! export 1407 [provided] [no usage info] [missing usage info prevents renaming] */
  17314. /*! export 1408 [provided] [no usage info] [missing usage info prevents renaming] */
  17315. /*! export 1409 [provided] [no usage info] [missing usage info prevents renaming] */
  17316. /*! export 141 [provided] [no usage info] [missing usage info prevents renaming] */
  17317. /*! export 1410 [provided] [no usage info] [missing usage info prevents renaming] */
  17318. /*! export 1411 [provided] [no usage info] [missing usage info prevents renaming] */
  17319. /*! export 1412 [provided] [no usage info] [missing usage info prevents renaming] */
  17320. /*! export 1413 [provided] [no usage info] [missing usage info prevents renaming] */
  17321. /*! export 1414 [provided] [no usage info] [missing usage info prevents renaming] */
  17322. /*! export 1415 [provided] [no usage info] [missing usage info prevents renaming] */
  17323. /*! export 1416 [provided] [no usage info] [missing usage info prevents renaming] */
  17324. /*! export 1417 [provided] [no usage info] [missing usage info prevents renaming] */
  17325. /*! export 1418 [provided] [no usage info] [missing usage info prevents renaming] */
  17326. /*! export 1419 [provided] [no usage info] [missing usage info prevents renaming] */
  17327. /*! export 142 [provided] [no usage info] [missing usage info prevents renaming] */
  17328. /*! export 1420 [provided] [no usage info] [missing usage info prevents renaming] */
  17329. /*! export 1421 [provided] [no usage info] [missing usage info prevents renaming] */
  17330. /*! export 1422 [provided] [no usage info] [missing usage info prevents renaming] */
  17331. /*! export 1423 [provided] [no usage info] [missing usage info prevents renaming] */
  17332. /*! export 1424 [provided] [no usage info] [missing usage info prevents renaming] */
  17333. /*! export 1425 [provided] [no usage info] [missing usage info prevents renaming] */
  17334. /*! export 1426 [provided] [no usage info] [missing usage info prevents renaming] */
  17335. /*! export 1427 [provided] [no usage info] [missing usage info prevents renaming] */
  17336. /*! export 1428 [provided] [no usage info] [missing usage info prevents renaming] */
  17337. /*! export 1429 [provided] [no usage info] [missing usage info prevents renaming] */
  17338. /*! export 143 [provided] [no usage info] [missing usage info prevents renaming] */
  17339. /*! export 1430 [provided] [no usage info] [missing usage info prevents renaming] */
  17340. /*! export 1431 [provided] [no usage info] [missing usage info prevents renaming] */
  17341. /*! export 1432 [provided] [no usage info] [missing usage info prevents renaming] */
  17342. /*! export 1433 [provided] [no usage info] [missing usage info prevents renaming] */
  17343. /*! export 1434 [provided] [no usage info] [missing usage info prevents renaming] */
  17344. /*! export 1435 [provided] [no usage info] [missing usage info prevents renaming] */
  17345. /*! export 1436 [provided] [no usage info] [missing usage info prevents renaming] */
  17346. /*! export 1437 [provided] [no usage info] [missing usage info prevents renaming] */
  17347. /*! export 1438 [provided] [no usage info] [missing usage info prevents renaming] */
  17348. /*! export 1439 [provided] [no usage info] [missing usage info prevents renaming] */
  17349. /*! export 144 [provided] [no usage info] [missing usage info prevents renaming] */
  17350. /*! export 1440 [provided] [no usage info] [missing usage info prevents renaming] */
  17351. /*! export 1441 [provided] [no usage info] [missing usage info prevents renaming] */
  17352. /*! export 1442 [provided] [no usage info] [missing usage info prevents renaming] */
  17353. /*! export 1443 [provided] [no usage info] [missing usage info prevents renaming] */
  17354. /*! export 1444 [provided] [no usage info] [missing usage info prevents renaming] */
  17355. /*! export 1445 [provided] [no usage info] [missing usage info prevents renaming] */
  17356. /*! export 1446 [provided] [no usage info] [missing usage info prevents renaming] */
  17357. /*! export 1447 [provided] [no usage info] [missing usage info prevents renaming] */
  17358. /*! export 1448 [provided] [no usage info] [missing usage info prevents renaming] */
  17359. /*! export 1449 [provided] [no usage info] [missing usage info prevents renaming] */
  17360. /*! export 145 [provided] [no usage info] [missing usage info prevents renaming] */
  17361. /*! export 1450 [provided] [no usage info] [missing usage info prevents renaming] */
  17362. /*! export 1451 [provided] [no usage info] [missing usage info prevents renaming] */
  17363. /*! export 1452 [provided] [no usage info] [missing usage info prevents renaming] */
  17364. /*! export 1453 [provided] [no usage info] [missing usage info prevents renaming] */
  17365. /*! export 1454 [provided] [no usage info] [missing usage info prevents renaming] */
  17366. /*! export 1455 [provided] [no usage info] [missing usage info prevents renaming] */
  17367. /*! export 1456 [provided] [no usage info] [missing usage info prevents renaming] */
  17368. /*! export 1457 [provided] [no usage info] [missing usage info prevents renaming] */
  17369. /*! export 1458 [provided] [no usage info] [missing usage info prevents renaming] */
  17370. /*! export 1459 [provided] [no usage info] [missing usage info prevents renaming] */
  17371. /*! export 146 [provided] [no usage info] [missing usage info prevents renaming] */
  17372. /*! export 1460 [provided] [no usage info] [missing usage info prevents renaming] */
  17373. /*! export 1461 [provided] [no usage info] [missing usage info prevents renaming] */
  17374. /*! export 1462 [provided] [no usage info] [missing usage info prevents renaming] */
  17375. /*! export 1463 [provided] [no usage info] [missing usage info prevents renaming] */
  17376. /*! export 1464 [provided] [no usage info] [missing usage info prevents renaming] */
  17377. /*! export 1465 [provided] [no usage info] [missing usage info prevents renaming] */
  17378. /*! export 1466 [provided] [no usage info] [missing usage info prevents renaming] */
  17379. /*! export 1467 [provided] [no usage info] [missing usage info prevents renaming] */
  17380. /*! export 1468 [provided] [no usage info] [missing usage info prevents renaming] */
  17381. /*! export 1469 [provided] [no usage info] [missing usage info prevents renaming] */
  17382. /*! export 147 [provided] [no usage info] [missing usage info prevents renaming] */
  17383. /*! export 1470 [provided] [no usage info] [missing usage info prevents renaming] */
  17384. /*! export 1471 [provided] [no usage info] [missing usage info prevents renaming] */
  17385. /*! export 1472 [provided] [no usage info] [missing usage info prevents renaming] */
  17386. /*! export 1473 [provided] [no usage info] [missing usage info prevents renaming] */
  17387. /*! export 1474 [provided] [no usage info] [missing usage info prevents renaming] */
  17388. /*! export 1475 [provided] [no usage info] [missing usage info prevents renaming] */
  17389. /*! export 1476 [provided] [no usage info] [missing usage info prevents renaming] */
  17390. /*! export 1477 [provided] [no usage info] [missing usage info prevents renaming] */
  17391. /*! export 1478 [provided] [no usage info] [missing usage info prevents renaming] */
  17392. /*! export 1479 [provided] [no usage info] [missing usage info prevents renaming] */
  17393. /*! export 148 [provided] [no usage info] [missing usage info prevents renaming] */
  17394. /*! export 1480 [provided] [no usage info] [missing usage info prevents renaming] */
  17395. /*! export 1481 [provided] [no usage info] [missing usage info prevents renaming] */
  17396. /*! export 1482 [provided] [no usage info] [missing usage info prevents renaming] */
  17397. /*! export 1483 [provided] [no usage info] [missing usage info prevents renaming] */
  17398. /*! export 1484 [provided] [no usage info] [missing usage info prevents renaming] */
  17399. /*! export 1485 [provided] [no usage info] [missing usage info prevents renaming] */
  17400. /*! export 1486 [provided] [no usage info] [missing usage info prevents renaming] */
  17401. /*! export 1487 [provided] [no usage info] [missing usage info prevents renaming] */
  17402. /*! export 1488 [provided] [no usage info] [missing usage info prevents renaming] */
  17403. /*! export 1489 [provided] [no usage info] [missing usage info prevents renaming] */
  17404. /*! export 149 [provided] [no usage info] [missing usage info prevents renaming] */
  17405. /*! export 1490 [provided] [no usage info] [missing usage info prevents renaming] */
  17406. /*! export 1491 [provided] [no usage info] [missing usage info prevents renaming] */
  17407. /*! export 1492 [provided] [no usage info] [missing usage info prevents renaming] */
  17408. /*! export 1493 [provided] [no usage info] [missing usage info prevents renaming] */
  17409. /*! export 1494 [provided] [no usage info] [missing usage info prevents renaming] */
  17410. /*! export 1495 [provided] [no usage info] [missing usage info prevents renaming] */
  17411. /*! export 1496 [provided] [no usage info] [missing usage info prevents renaming] */
  17412. /*! export 1497 [provided] [no usage info] [missing usage info prevents renaming] */
  17413. /*! export 1498 [provided] [no usage info] [missing usage info prevents renaming] */
  17414. /*! export 1499 [provided] [no usage info] [missing usage info prevents renaming] */
  17415. /*! export 15 [provided] [no usage info] [missing usage info prevents renaming] */
  17416. /*! export 150 [provided] [no usage info] [missing usage info prevents renaming] */
  17417. /*! export 1500 [provided] [no usage info] [missing usage info prevents renaming] */
  17418. /*! export 1501 [provided] [no usage info] [missing usage info prevents renaming] */
  17419. /*! export 1502 [provided] [no usage info] [missing usage info prevents renaming] */
  17420. /*! export 1503 [provided] [no usage info] [missing usage info prevents renaming] */
  17421. /*! export 1504 [provided] [no usage info] [missing usage info prevents renaming] */
  17422. /*! export 1505 [provided] [no usage info] [missing usage info prevents renaming] */
  17423. /*! export 1506 [provided] [no usage info] [missing usage info prevents renaming] */
  17424. /*! export 1507 [provided] [no usage info] [missing usage info prevents renaming] */
  17425. /*! export 1508 [provided] [no usage info] [missing usage info prevents renaming] */
  17426. /*! export 1509 [provided] [no usage info] [missing usage info prevents renaming] */
  17427. /*! export 151 [provided] [no usage info] [missing usage info prevents renaming] */
  17428. /*! export 1510 [provided] [no usage info] [missing usage info prevents renaming] */
  17429. /*! export 1511 [provided] [no usage info] [missing usage info prevents renaming] */
  17430. /*! export 1512 [provided] [no usage info] [missing usage info prevents renaming] */
  17431. /*! export 1513 [provided] [no usage info] [missing usage info prevents renaming] */
  17432. /*! export 1514 [provided] [no usage info] [missing usage info prevents renaming] */
  17433. /*! export 1515 [provided] [no usage info] [missing usage info prevents renaming] */
  17434. /*! export 1516 [provided] [no usage info] [missing usage info prevents renaming] */
  17435. /*! export 1517 [provided] [no usage info] [missing usage info prevents renaming] */
  17436. /*! export 1518 [provided] [no usage info] [missing usage info prevents renaming] */
  17437. /*! export 1519 [provided] [no usage info] [missing usage info prevents renaming] */
  17438. /*! export 152 [provided] [no usage info] [missing usage info prevents renaming] */
  17439. /*! export 1520 [provided] [no usage info] [missing usage info prevents renaming] */
  17440. /*! export 1521 [provided] [no usage info] [missing usage info prevents renaming] */
  17441. /*! export 1522 [provided] [no usage info] [missing usage info prevents renaming] */
  17442. /*! export 1523 [provided] [no usage info] [missing usage info prevents renaming] */
  17443. /*! export 1524 [provided] [no usage info] [missing usage info prevents renaming] */
  17444. /*! export 1525 [provided] [no usage info] [missing usage info prevents renaming] */
  17445. /*! export 1526 [provided] [no usage info] [missing usage info prevents renaming] */
  17446. /*! export 1527 [provided] [no usage info] [missing usage info prevents renaming] */
  17447. /*! export 1528 [provided] [no usage info] [missing usage info prevents renaming] */
  17448. /*! export 1529 [provided] [no usage info] [missing usage info prevents renaming] */
  17449. /*! export 153 [provided] [no usage info] [missing usage info prevents renaming] */
  17450. /*! export 1530 [provided] [no usage info] [missing usage info prevents renaming] */
  17451. /*! export 1531 [provided] [no usage info] [missing usage info prevents renaming] */
  17452. /*! export 1532 [provided] [no usage info] [missing usage info prevents renaming] */
  17453. /*! export 1533 [provided] [no usage info] [missing usage info prevents renaming] */
  17454. /*! export 1534 [provided] [no usage info] [missing usage info prevents renaming] */
  17455. /*! export 1535 [provided] [no usage info] [missing usage info prevents renaming] */
  17456. /*! export 1536 [provided] [no usage info] [missing usage info prevents renaming] */
  17457. /*! export 1537 [provided] [no usage info] [missing usage info prevents renaming] */
  17458. /*! export 1538 [provided] [no usage info] [missing usage info prevents renaming] */
  17459. /*! export 1539 [provided] [no usage info] [missing usage info prevents renaming] */
  17460. /*! export 154 [provided] [no usage info] [missing usage info prevents renaming] */
  17461. /*! export 1540 [provided] [no usage info] [missing usage info prevents renaming] */
  17462. /*! export 1541 [provided] [no usage info] [missing usage info prevents renaming] */
  17463. /*! export 1542 [provided] [no usage info] [missing usage info prevents renaming] */
  17464. /*! export 1543 [provided] [no usage info] [missing usage info prevents renaming] */
  17465. /*! export 1544 [provided] [no usage info] [missing usage info prevents renaming] */
  17466. /*! export 1545 [provided] [no usage info] [missing usage info prevents renaming] */
  17467. /*! export 1546 [provided] [no usage info] [missing usage info prevents renaming] */
  17468. /*! export 1547 [provided] [no usage info] [missing usage info prevents renaming] */
  17469. /*! export 1548 [provided] [no usage info] [missing usage info prevents renaming] */
  17470. /*! export 1549 [provided] [no usage info] [missing usage info prevents renaming] */
  17471. /*! export 155 [provided] [no usage info] [missing usage info prevents renaming] */
  17472. /*! export 1550 [provided] [no usage info] [missing usage info prevents renaming] */
  17473. /*! export 1551 [provided] [no usage info] [missing usage info prevents renaming] */
  17474. /*! export 1552 [provided] [no usage info] [missing usage info prevents renaming] */
  17475. /*! export 1553 [provided] [no usage info] [missing usage info prevents renaming] */
  17476. /*! export 1554 [provided] [no usage info] [missing usage info prevents renaming] */
  17477. /*! export 1555 [provided] [no usage info] [missing usage info prevents renaming] */
  17478. /*! export 1556 [provided] [no usage info] [missing usage info prevents renaming] */
  17479. /*! export 1557 [provided] [no usage info] [missing usage info prevents renaming] */
  17480. /*! export 1558 [provided] [no usage info] [missing usage info prevents renaming] */
  17481. /*! export 1559 [provided] [no usage info] [missing usage info prevents renaming] */
  17482. /*! export 156 [provided] [no usage info] [missing usage info prevents renaming] */
  17483. /*! export 1560 [provided] [no usage info] [missing usage info prevents renaming] */
  17484. /*! export 1561 [provided] [no usage info] [missing usage info prevents renaming] */
  17485. /*! export 1562 [provided] [no usage info] [missing usage info prevents renaming] */
  17486. /*! export 1563 [provided] [no usage info] [missing usage info prevents renaming] */
  17487. /*! export 1564 [provided] [no usage info] [missing usage info prevents renaming] */
  17488. /*! export 1565 [provided] [no usage info] [missing usage info prevents renaming] */
  17489. /*! export 1566 [provided] [no usage info] [missing usage info prevents renaming] */
  17490. /*! export 1567 [provided] [no usage info] [missing usage info prevents renaming] */
  17491. /*! export 1568 [provided] [no usage info] [missing usage info prevents renaming] */
  17492. /*! export 1569 [provided] [no usage info] [missing usage info prevents renaming] */
  17493. /*! export 157 [provided] [no usage info] [missing usage info prevents renaming] */
  17494. /*! export 1570 [provided] [no usage info] [missing usage info prevents renaming] */
  17495. /*! export 1571 [provided] [no usage info] [missing usage info prevents renaming] */
  17496. /*! export 1572 [provided] [no usage info] [missing usage info prevents renaming] */
  17497. /*! export 1573 [provided] [no usage info] [missing usage info prevents renaming] */
  17498. /*! export 1574 [provided] [no usage info] [missing usage info prevents renaming] */
  17499. /*! export 1575 [provided] [no usage info] [missing usage info prevents renaming] */
  17500. /*! export 1576 [provided] [no usage info] [missing usage info prevents renaming] */
  17501. /*! export 1577 [provided] [no usage info] [missing usage info prevents renaming] */
  17502. /*! export 1578 [provided] [no usage info] [missing usage info prevents renaming] */
  17503. /*! export 1579 [provided] [no usage info] [missing usage info prevents renaming] */
  17504. /*! export 158 [provided] [no usage info] [missing usage info prevents renaming] */
  17505. /*! export 1580 [provided] [no usage info] [missing usage info prevents renaming] */
  17506. /*! export 1581 [provided] [no usage info] [missing usage info prevents renaming] */
  17507. /*! export 1582 [provided] [no usage info] [missing usage info prevents renaming] */
  17508. /*! export 1583 [provided] [no usage info] [missing usage info prevents renaming] */
  17509. /*! export 1584 [provided] [no usage info] [missing usage info prevents renaming] */
  17510. /*! export 1585 [provided] [no usage info] [missing usage info prevents renaming] */
  17511. /*! export 1586 [provided] [no usage info] [missing usage info prevents renaming] */
  17512. /*! export 1587 [provided] [no usage info] [missing usage info prevents renaming] */
  17513. /*! export 1588 [provided] [no usage info] [missing usage info prevents renaming] */
  17514. /*! export 1589 [provided] [no usage info] [missing usage info prevents renaming] */
  17515. /*! export 159 [provided] [no usage info] [missing usage info prevents renaming] */
  17516. /*! export 1590 [provided] [no usage info] [missing usage info prevents renaming] */
  17517. /*! export 1591 [provided] [no usage info] [missing usage info prevents renaming] */
  17518. /*! export 1592 [provided] [no usage info] [missing usage info prevents renaming] */
  17519. /*! export 1593 [provided] [no usage info] [missing usage info prevents renaming] */
  17520. /*! export 1594 [provided] [no usage info] [missing usage info prevents renaming] */
  17521. /*! export 1595 [provided] [no usage info] [missing usage info prevents renaming] */
  17522. /*! export 1596 [provided] [no usage info] [missing usage info prevents renaming] */
  17523. /*! export 1597 [provided] [no usage info] [missing usage info prevents renaming] */
  17524. /*! export 1598 [provided] [no usage info] [missing usage info prevents renaming] */
  17525. /*! export 1599 [provided] [no usage info] [missing usage info prevents renaming] */
  17526. /*! export 16 [provided] [no usage info] [missing usage info prevents renaming] */
  17527. /*! export 160 [provided] [no usage info] [missing usage info prevents renaming] */
  17528. /*! export 1600 [provided] [no usage info] [missing usage info prevents renaming] */
  17529. /*! export 1601 [provided] [no usage info] [missing usage info prevents renaming] */
  17530. /*! export 1602 [provided] [no usage info] [missing usage info prevents renaming] */
  17531. /*! export 1603 [provided] [no usage info] [missing usage info prevents renaming] */
  17532. /*! export 1604 [provided] [no usage info] [missing usage info prevents renaming] */
  17533. /*! export 1605 [provided] [no usage info] [missing usage info prevents renaming] */
  17534. /*! export 1606 [provided] [no usage info] [missing usage info prevents renaming] */
  17535. /*! export 1607 [provided] [no usage info] [missing usage info prevents renaming] */
  17536. /*! export 1608 [provided] [no usage info] [missing usage info prevents renaming] */
  17537. /*! export 1609 [provided] [no usage info] [missing usage info prevents renaming] */
  17538. /*! export 161 [provided] [no usage info] [missing usage info prevents renaming] */
  17539. /*! export 1610 [provided] [no usage info] [missing usage info prevents renaming] */
  17540. /*! export 1611 [provided] [no usage info] [missing usage info prevents renaming] */
  17541. /*! export 1612 [provided] [no usage info] [missing usage info prevents renaming] */
  17542. /*! export 1613 [provided] [no usage info] [missing usage info prevents renaming] */
  17543. /*! export 1614 [provided] [no usage info] [missing usage info prevents renaming] */
  17544. /*! export 1615 [provided] [no usage info] [missing usage info prevents renaming] */
  17545. /*! export 1616 [provided] [no usage info] [missing usage info prevents renaming] */
  17546. /*! export 1617 [provided] [no usage info] [missing usage info prevents renaming] */
  17547. /*! export 1618 [provided] [no usage info] [missing usage info prevents renaming] */
  17548. /*! export 1619 [provided] [no usage info] [missing usage info prevents renaming] */
  17549. /*! export 162 [provided] [no usage info] [missing usage info prevents renaming] */
  17550. /*! export 1620 [provided] [no usage info] [missing usage info prevents renaming] */
  17551. /*! export 1621 [provided] [no usage info] [missing usage info prevents renaming] */
  17552. /*! export 1622 [provided] [no usage info] [missing usage info prevents renaming] */
  17553. /*! export 1623 [provided] [no usage info] [missing usage info prevents renaming] */
  17554. /*! export 1624 [provided] [no usage info] [missing usage info prevents renaming] */
  17555. /*! export 1625 [provided] [no usage info] [missing usage info prevents renaming] */
  17556. /*! export 1626 [provided] [no usage info] [missing usage info prevents renaming] */
  17557. /*! export 1627 [provided] [no usage info] [missing usage info prevents renaming] */
  17558. /*! export 1628 [provided] [no usage info] [missing usage info prevents renaming] */
  17559. /*! export 1629 [provided] [no usage info] [missing usage info prevents renaming] */
  17560. /*! export 163 [provided] [no usage info] [missing usage info prevents renaming] */
  17561. /*! export 1630 [provided] [no usage info] [missing usage info prevents renaming] */
  17562. /*! export 1631 [provided] [no usage info] [missing usage info prevents renaming] */
  17563. /*! export 1632 [provided] [no usage info] [missing usage info prevents renaming] */
  17564. /*! export 1633 [provided] [no usage info] [missing usage info prevents renaming] */
  17565. /*! export 1634 [provided] [no usage info] [missing usage info prevents renaming] */
  17566. /*! export 1635 [provided] [no usage info] [missing usage info prevents renaming] */
  17567. /*! export 1636 [provided] [no usage info] [missing usage info prevents renaming] */
  17568. /*! export 1637 [provided] [no usage info] [missing usage info prevents renaming] */
  17569. /*! export 1638 [provided] [no usage info] [missing usage info prevents renaming] */
  17570. /*! export 1639 [provided] [no usage info] [missing usage info prevents renaming] */
  17571. /*! export 164 [provided] [no usage info] [missing usage info prevents renaming] */
  17572. /*! export 1640 [provided] [no usage info] [missing usage info prevents renaming] */
  17573. /*! export 1641 [provided] [no usage info] [missing usage info prevents renaming] */
  17574. /*! export 1642 [provided] [no usage info] [missing usage info prevents renaming] */
  17575. /*! export 1643 [provided] [no usage info] [missing usage info prevents renaming] */
  17576. /*! export 1644 [provided] [no usage info] [missing usage info prevents renaming] */
  17577. /*! export 1645 [provided] [no usage info] [missing usage info prevents renaming] */
  17578. /*! export 1646 [provided] [no usage info] [missing usage info prevents renaming] */
  17579. /*! export 1647 [provided] [no usage info] [missing usage info prevents renaming] */
  17580. /*! export 1648 [provided] [no usage info] [missing usage info prevents renaming] */
  17581. /*! export 1649 [provided] [no usage info] [missing usage info prevents renaming] */
  17582. /*! export 165 [provided] [no usage info] [missing usage info prevents renaming] */
  17583. /*! export 1650 [provided] [no usage info] [missing usage info prevents renaming] */
  17584. /*! export 1651 [provided] [no usage info] [missing usage info prevents renaming] */
  17585. /*! export 1652 [provided] [no usage info] [missing usage info prevents renaming] */
  17586. /*! export 1653 [provided] [no usage info] [missing usage info prevents renaming] */
  17587. /*! export 1654 [provided] [no usage info] [missing usage info prevents renaming] */
  17588. /*! export 1655 [provided] [no usage info] [missing usage info prevents renaming] */
  17589. /*! export 1656 [provided] [no usage info] [missing usage info prevents renaming] */
  17590. /*! export 1657 [provided] [no usage info] [missing usage info prevents renaming] */
  17591. /*! export 1658 [provided] [no usage info] [missing usage info prevents renaming] */
  17592. /*! export 1659 [provided] [no usage info] [missing usage info prevents renaming] */
  17593. /*! export 166 [provided] [no usage info] [missing usage info prevents renaming] */
  17594. /*! export 1660 [provided] [no usage info] [missing usage info prevents renaming] */
  17595. /*! export 1661 [provided] [no usage info] [missing usage info prevents renaming] */
  17596. /*! export 1662 [provided] [no usage info] [missing usage info prevents renaming] */
  17597. /*! export 1663 [provided] [no usage info] [missing usage info prevents renaming] */
  17598. /*! export 1664 [provided] [no usage info] [missing usage info prevents renaming] */
  17599. /*! export 1665 [provided] [no usage info] [missing usage info prevents renaming] */
  17600. /*! export 1666 [provided] [no usage info] [missing usage info prevents renaming] */
  17601. /*! export 1667 [provided] [no usage info] [missing usage info prevents renaming] */
  17602. /*! export 1668 [provided] [no usage info] [missing usage info prevents renaming] */
  17603. /*! export 1669 [provided] [no usage info] [missing usage info prevents renaming] */
  17604. /*! export 167 [provided] [no usage info] [missing usage info prevents renaming] */
  17605. /*! export 1670 [provided] [no usage info] [missing usage info prevents renaming] */
  17606. /*! export 1671 [provided] [no usage info] [missing usage info prevents renaming] */
  17607. /*! export 1672 [provided] [no usage info] [missing usage info prevents renaming] */
  17608. /*! export 1673 [provided] [no usage info] [missing usage info prevents renaming] */
  17609. /*! export 1674 [provided] [no usage info] [missing usage info prevents renaming] */
  17610. /*! export 1675 [provided] [no usage info] [missing usage info prevents renaming] */
  17611. /*! export 1676 [provided] [no usage info] [missing usage info prevents renaming] */
  17612. /*! export 1677 [provided] [no usage info] [missing usage info prevents renaming] */
  17613. /*! export 1678 [provided] [no usage info] [missing usage info prevents renaming] */
  17614. /*! export 1679 [provided] [no usage info] [missing usage info prevents renaming] */
  17615. /*! export 168 [provided] [no usage info] [missing usage info prevents renaming] */
  17616. /*! export 1680 [provided] [no usage info] [missing usage info prevents renaming] */
  17617. /*! export 1681 [provided] [no usage info] [missing usage info prevents renaming] */
  17618. /*! export 1682 [provided] [no usage info] [missing usage info prevents renaming] */
  17619. /*! export 1683 [provided] [no usage info] [missing usage info prevents renaming] */
  17620. /*! export 1684 [provided] [no usage info] [missing usage info prevents renaming] */
  17621. /*! export 1685 [provided] [no usage info] [missing usage info prevents renaming] */
  17622. /*! export 1686 [provided] [no usage info] [missing usage info prevents renaming] */
  17623. /*! export 1687 [provided] [no usage info] [missing usage info prevents renaming] */
  17624. /*! export 1688 [provided] [no usage info] [missing usage info prevents renaming] */
  17625. /*! export 1689 [provided] [no usage info] [missing usage info prevents renaming] */
  17626. /*! export 169 [provided] [no usage info] [missing usage info prevents renaming] */
  17627. /*! export 1690 [provided] [no usage info] [missing usage info prevents renaming] */
  17628. /*! export 1691 [provided] [no usage info] [missing usage info prevents renaming] */
  17629. /*! export 1692 [provided] [no usage info] [missing usage info prevents renaming] */
  17630. /*! export 1693 [provided] [no usage info] [missing usage info prevents renaming] */
  17631. /*! export 1694 [provided] [no usage info] [missing usage info prevents renaming] */
  17632. /*! export 1695 [provided] [no usage info] [missing usage info prevents renaming] */
  17633. /*! export 1696 [provided] [no usage info] [missing usage info prevents renaming] */
  17634. /*! export 1697 [provided] [no usage info] [missing usage info prevents renaming] */
  17635. /*! export 1698 [provided] [no usage info] [missing usage info prevents renaming] */
  17636. /*! export 1699 [provided] [no usage info] [missing usage info prevents renaming] */
  17637. /*! export 17 [provided] [no usage info] [missing usage info prevents renaming] */
  17638. /*! export 170 [provided] [no usage info] [missing usage info prevents renaming] */
  17639. /*! export 1700 [provided] [no usage info] [missing usage info prevents renaming] */
  17640. /*! export 1701 [provided] [no usage info] [missing usage info prevents renaming] */
  17641. /*! export 1702 [provided] [no usage info] [missing usage info prevents renaming] */
  17642. /*! export 1703 [provided] [no usage info] [missing usage info prevents renaming] */
  17643. /*! export 1704 [provided] [no usage info] [missing usage info prevents renaming] */
  17644. /*! export 1705 [provided] [no usage info] [missing usage info prevents renaming] */
  17645. /*! export 1706 [provided] [no usage info] [missing usage info prevents renaming] */
  17646. /*! export 1707 [provided] [no usage info] [missing usage info prevents renaming] */
  17647. /*! export 1708 [provided] [no usage info] [missing usage info prevents renaming] */
  17648. /*! export 1709 [provided] [no usage info] [missing usage info prevents renaming] */
  17649. /*! export 171 [provided] [no usage info] [missing usage info prevents renaming] */
  17650. /*! export 1710 [provided] [no usage info] [missing usage info prevents renaming] */
  17651. /*! export 1711 [provided] [no usage info] [missing usage info prevents renaming] */
  17652. /*! export 1712 [provided] [no usage info] [missing usage info prevents renaming] */
  17653. /*! export 1713 [provided] [no usage info] [missing usage info prevents renaming] */
  17654. /*! export 1714 [provided] [no usage info] [missing usage info prevents renaming] */
  17655. /*! export 1715 [provided] [no usage info] [missing usage info prevents renaming] */
  17656. /*! export 1716 [provided] [no usage info] [missing usage info prevents renaming] */
  17657. /*! export 1717 [provided] [no usage info] [missing usage info prevents renaming] */
  17658. /*! export 1718 [provided] [no usage info] [missing usage info prevents renaming] */
  17659. /*! export 1719 [provided] [no usage info] [missing usage info prevents renaming] */
  17660. /*! export 172 [provided] [no usage info] [missing usage info prevents renaming] */
  17661. /*! export 1720 [provided] [no usage info] [missing usage info prevents renaming] */
  17662. /*! export 1721 [provided] [no usage info] [missing usage info prevents renaming] */
  17663. /*! export 1722 [provided] [no usage info] [missing usage info prevents renaming] */
  17664. /*! export 1723 [provided] [no usage info] [missing usage info prevents renaming] */
  17665. /*! export 1724 [provided] [no usage info] [missing usage info prevents renaming] */
  17666. /*! export 1725 [provided] [no usage info] [missing usage info prevents renaming] */
  17667. /*! export 1726 [provided] [no usage info] [missing usage info prevents renaming] */
  17668. /*! export 1727 [provided] [no usage info] [missing usage info prevents renaming] */
  17669. /*! export 1728 [provided] [no usage info] [missing usage info prevents renaming] */
  17670. /*! export 1729 [provided] [no usage info] [missing usage info prevents renaming] */
  17671. /*! export 173 [provided] [no usage info] [missing usage info prevents renaming] */
  17672. /*! export 1730 [provided] [no usage info] [missing usage info prevents renaming] */
  17673. /*! export 1731 [provided] [no usage info] [missing usage info prevents renaming] */
  17674. /*! export 1732 [provided] [no usage info] [missing usage info prevents renaming] */
  17675. /*! export 1733 [provided] [no usage info] [missing usage info prevents renaming] */
  17676. /*! export 1734 [provided] [no usage info] [missing usage info prevents renaming] */
  17677. /*! export 1735 [provided] [no usage info] [missing usage info prevents renaming] */
  17678. /*! export 1736 [provided] [no usage info] [missing usage info prevents renaming] */
  17679. /*! export 1737 [provided] [no usage info] [missing usage info prevents renaming] */
  17680. /*! export 1738 [provided] [no usage info] [missing usage info prevents renaming] */
  17681. /*! export 1739 [provided] [no usage info] [missing usage info prevents renaming] */
  17682. /*! export 174 [provided] [no usage info] [missing usage info prevents renaming] */
  17683. /*! export 1740 [provided] [no usage info] [missing usage info prevents renaming] */
  17684. /*! export 1741 [provided] [no usage info] [missing usage info prevents renaming] */
  17685. /*! export 1742 [provided] [no usage info] [missing usage info prevents renaming] */
  17686. /*! export 1743 [provided] [no usage info] [missing usage info prevents renaming] */
  17687. /*! export 1744 [provided] [no usage info] [missing usage info prevents renaming] */
  17688. /*! export 1745 [provided] [no usage info] [missing usage info prevents renaming] */
  17689. /*! export 1746 [provided] [no usage info] [missing usage info prevents renaming] */
  17690. /*! export 1747 [provided] [no usage info] [missing usage info prevents renaming] */
  17691. /*! export 1748 [provided] [no usage info] [missing usage info prevents renaming] */
  17692. /*! export 1749 [provided] [no usage info] [missing usage info prevents renaming] */
  17693. /*! export 175 [provided] [no usage info] [missing usage info prevents renaming] */
  17694. /*! export 1750 [provided] [no usage info] [missing usage info prevents renaming] */
  17695. /*! export 1751 [provided] [no usage info] [missing usage info prevents renaming] */
  17696. /*! export 1752 [provided] [no usage info] [missing usage info prevents renaming] */
  17697. /*! export 1753 [provided] [no usage info] [missing usage info prevents renaming] */
  17698. /*! export 1754 [provided] [no usage info] [missing usage info prevents renaming] */
  17699. /*! export 1755 [provided] [no usage info] [missing usage info prevents renaming] */
  17700. /*! export 1756 [provided] [no usage info] [missing usage info prevents renaming] */
  17701. /*! export 1757 [provided] [no usage info] [missing usage info prevents renaming] */
  17702. /*! export 1758 [provided] [no usage info] [missing usage info prevents renaming] */
  17703. /*! export 1759 [provided] [no usage info] [missing usage info prevents renaming] */
  17704. /*! export 176 [provided] [no usage info] [missing usage info prevents renaming] */
  17705. /*! export 1760 [provided] [no usage info] [missing usage info prevents renaming] */
  17706. /*! export 1761 [provided] [no usage info] [missing usage info prevents renaming] */
  17707. /*! export 1762 [provided] [no usage info] [missing usage info prevents renaming] */
  17708. /*! export 1763 [provided] [no usage info] [missing usage info prevents renaming] */
  17709. /*! export 1764 [provided] [no usage info] [missing usage info prevents renaming] */
  17710. /*! export 1765 [provided] [no usage info] [missing usage info prevents renaming] */
  17711. /*! export 1766 [provided] [no usage info] [missing usage info prevents renaming] */
  17712. /*! export 1767 [provided] [no usage info] [missing usage info prevents renaming] */
  17713. /*! export 1768 [provided] [no usage info] [missing usage info prevents renaming] */
  17714. /*! export 1769 [provided] [no usage info] [missing usage info prevents renaming] */
  17715. /*! export 177 [provided] [no usage info] [missing usage info prevents renaming] */
  17716. /*! export 1770 [provided] [no usage info] [missing usage info prevents renaming] */
  17717. /*! export 1771 [provided] [no usage info] [missing usage info prevents renaming] */
  17718. /*! export 1772 [provided] [no usage info] [missing usage info prevents renaming] */
  17719. /*! export 1773 [provided] [no usage info] [missing usage info prevents renaming] */
  17720. /*! export 1774 [provided] [no usage info] [missing usage info prevents renaming] */
  17721. /*! export 1775 [provided] [no usage info] [missing usage info prevents renaming] */
  17722. /*! export 1776 [provided] [no usage info] [missing usage info prevents renaming] */
  17723. /*! export 1777 [provided] [no usage info] [missing usage info prevents renaming] */
  17724. /*! export 1778 [provided] [no usage info] [missing usage info prevents renaming] */
  17725. /*! export 1779 [provided] [no usage info] [missing usage info prevents renaming] */
  17726. /*! export 178 [provided] [no usage info] [missing usage info prevents renaming] */
  17727. /*! export 1780 [provided] [no usage info] [missing usage info prevents renaming] */
  17728. /*! export 1781 [provided] [no usage info] [missing usage info prevents renaming] */
  17729. /*! export 1782 [provided] [no usage info] [missing usage info prevents renaming] */
  17730. /*! export 1783 [provided] [no usage info] [missing usage info prevents renaming] */
  17731. /*! export 1784 [provided] [no usage info] [missing usage info prevents renaming] */
  17732. /*! export 1785 [provided] [no usage info] [missing usage info prevents renaming] */
  17733. /*! export 1786 [provided] [no usage info] [missing usage info prevents renaming] */
  17734. /*! export 1787 [provided] [no usage info] [missing usage info prevents renaming] */
  17735. /*! export 1788 [provided] [no usage info] [missing usage info prevents renaming] */
  17736. /*! export 1789 [provided] [no usage info] [missing usage info prevents renaming] */
  17737. /*! export 179 [provided] [no usage info] [missing usage info prevents renaming] */
  17738. /*! export 1790 [provided] [no usage info] [missing usage info prevents renaming] */
  17739. /*! export 1791 [provided] [no usage info] [missing usage info prevents renaming] */
  17740. /*! export 1792 [provided] [no usage info] [missing usage info prevents renaming] */
  17741. /*! export 1793 [provided] [no usage info] [missing usage info prevents renaming] */
  17742. /*! export 1794 [provided] [no usage info] [missing usage info prevents renaming] */
  17743. /*! export 1795 [provided] [no usage info] [missing usage info prevents renaming] */
  17744. /*! export 1796 [provided] [no usage info] [missing usage info prevents renaming] */
  17745. /*! export 1797 [provided] [no usage info] [missing usage info prevents renaming] */
  17746. /*! export 1798 [provided] [no usage info] [missing usage info prevents renaming] */
  17747. /*! export 1799 [provided] [no usage info] [missing usage info prevents renaming] */
  17748. /*! export 18 [provided] [no usage info] [missing usage info prevents renaming] */
  17749. /*! export 180 [provided] [no usage info] [missing usage info prevents renaming] */
  17750. /*! export 1800 [provided] [no usage info] [missing usage info prevents renaming] */
  17751. /*! export 1801 [provided] [no usage info] [missing usage info prevents renaming] */
  17752. /*! export 1802 [provided] [no usage info] [missing usage info prevents renaming] */
  17753. /*! export 1803 [provided] [no usage info] [missing usage info prevents renaming] */
  17754. /*! export 1804 [provided] [no usage info] [missing usage info prevents renaming] */
  17755. /*! export 1805 [provided] [no usage info] [missing usage info prevents renaming] */
  17756. /*! export 1806 [provided] [no usage info] [missing usage info prevents renaming] */
  17757. /*! export 1807 [provided] [no usage info] [missing usage info prevents renaming] */
  17758. /*! export 1808 [provided] [no usage info] [missing usage info prevents renaming] */
  17759. /*! export 1809 [provided] [no usage info] [missing usage info prevents renaming] */
  17760. /*! export 181 [provided] [no usage info] [missing usage info prevents renaming] */
  17761. /*! export 1810 [provided] [no usage info] [missing usage info prevents renaming] */
  17762. /*! export 1811 [provided] [no usage info] [missing usage info prevents renaming] */
  17763. /*! export 1812 [provided] [no usage info] [missing usage info prevents renaming] */
  17764. /*! export 1813 [provided] [no usage info] [missing usage info prevents renaming] */
  17765. /*! export 1814 [provided] [no usage info] [missing usage info prevents renaming] */
  17766. /*! export 1815 [provided] [no usage info] [missing usage info prevents renaming] */
  17767. /*! export 1816 [provided] [no usage info] [missing usage info prevents renaming] */
  17768. /*! export 1817 [provided] [no usage info] [missing usage info prevents renaming] */
  17769. /*! export 1818 [provided] [no usage info] [missing usage info prevents renaming] */
  17770. /*! export 1819 [provided] [no usage info] [missing usage info prevents renaming] */
  17771. /*! export 182 [provided] [no usage info] [missing usage info prevents renaming] */
  17772. /*! export 1820 [provided] [no usage info] [missing usage info prevents renaming] */
  17773. /*! export 1821 [provided] [no usage info] [missing usage info prevents renaming] */
  17774. /*! export 1822 [provided] [no usage info] [missing usage info prevents renaming] */
  17775. /*! export 1823 [provided] [no usage info] [missing usage info prevents renaming] */
  17776. /*! export 1824 [provided] [no usage info] [missing usage info prevents renaming] */
  17777. /*! export 1825 [provided] [no usage info] [missing usage info prevents renaming] */
  17778. /*! export 1826 [provided] [no usage info] [missing usage info prevents renaming] */
  17779. /*! export 1827 [provided] [no usage info] [missing usage info prevents renaming] */
  17780. /*! export 1828 [provided] [no usage info] [missing usage info prevents renaming] */
  17781. /*! export 1829 [provided] [no usage info] [missing usage info prevents renaming] */
  17782. /*! export 183 [provided] [no usage info] [missing usage info prevents renaming] */
  17783. /*! export 1830 [provided] [no usage info] [missing usage info prevents renaming] */
  17784. /*! export 1831 [provided] [no usage info] [missing usage info prevents renaming] */
  17785. /*! export 1832 [provided] [no usage info] [missing usage info prevents renaming] */
  17786. /*! export 1833 [provided] [no usage info] [missing usage info prevents renaming] */
  17787. /*! export 1834 [provided] [no usage info] [missing usage info prevents renaming] */
  17788. /*! export 1835 [provided] [no usage info] [missing usage info prevents renaming] */
  17789. /*! export 1836 [provided] [no usage info] [missing usage info prevents renaming] */
  17790. /*! export 1837 [provided] [no usage info] [missing usage info prevents renaming] */
  17791. /*! export 1838 [provided] [no usage info] [missing usage info prevents renaming] */
  17792. /*! export 1839 [provided] [no usage info] [missing usage info prevents renaming] */
  17793. /*! export 184 [provided] [no usage info] [missing usage info prevents renaming] */
  17794. /*! export 1840 [provided] [no usage info] [missing usage info prevents renaming] */
  17795. /*! export 1841 [provided] [no usage info] [missing usage info prevents renaming] */
  17796. /*! export 1842 [provided] [no usage info] [missing usage info prevents renaming] */
  17797. /*! export 1843 [provided] [no usage info] [missing usage info prevents renaming] */
  17798. /*! export 1844 [provided] [no usage info] [missing usage info prevents renaming] */
  17799. /*! export 1845 [provided] [no usage info] [missing usage info prevents renaming] */
  17800. /*! export 1846 [provided] [no usage info] [missing usage info prevents renaming] */
  17801. /*! export 1847 [provided] [no usage info] [missing usage info prevents renaming] */
  17802. /*! export 1848 [provided] [no usage info] [missing usage info prevents renaming] */
  17803. /*! export 1849 [provided] [no usage info] [missing usage info prevents renaming] */
  17804. /*! export 185 [provided] [no usage info] [missing usage info prevents renaming] */
  17805. /*! export 1850 [provided] [no usage info] [missing usage info prevents renaming] */
  17806. /*! export 1851 [provided] [no usage info] [missing usage info prevents renaming] */
  17807. /*! export 1852 [provided] [no usage info] [missing usage info prevents renaming] */
  17808. /*! export 1853 [provided] [no usage info] [missing usage info prevents renaming] */
  17809. /*! export 1854 [provided] [no usage info] [missing usage info prevents renaming] */
  17810. /*! export 1855 [provided] [no usage info] [missing usage info prevents renaming] */
  17811. /*! export 1856 [provided] [no usage info] [missing usage info prevents renaming] */
  17812. /*! export 1857 [provided] [no usage info] [missing usage info prevents renaming] */
  17813. /*! export 1858 [provided] [no usage info] [missing usage info prevents renaming] */
  17814. /*! export 1859 [provided] [no usage info] [missing usage info prevents renaming] */
  17815. /*! export 186 [provided] [no usage info] [missing usage info prevents renaming] */
  17816. /*! export 1860 [provided] [no usage info] [missing usage info prevents renaming] */
  17817. /*! export 1861 [provided] [no usage info] [missing usage info prevents renaming] */
  17818. /*! export 1862 [provided] [no usage info] [missing usage info prevents renaming] */
  17819. /*! export 1863 [provided] [no usage info] [missing usage info prevents renaming] */
  17820. /*! export 1864 [provided] [no usage info] [missing usage info prevents renaming] */
  17821. /*! export 1865 [provided] [no usage info] [missing usage info prevents renaming] */
  17822. /*! export 1866 [provided] [no usage info] [missing usage info prevents renaming] */
  17823. /*! export 1867 [provided] [no usage info] [missing usage info prevents renaming] */
  17824. /*! export 1868 [provided] [no usage info] [missing usage info prevents renaming] */
  17825. /*! export 1869 [provided] [no usage info] [missing usage info prevents renaming] */
  17826. /*! export 187 [provided] [no usage info] [missing usage info prevents renaming] */
  17827. /*! export 1870 [provided] [no usage info] [missing usage info prevents renaming] */
  17828. /*! export 1871 [provided] [no usage info] [missing usage info prevents renaming] */
  17829. /*! export 1872 [provided] [no usage info] [missing usage info prevents renaming] */
  17830. /*! export 1873 [provided] [no usage info] [missing usage info prevents renaming] */
  17831. /*! export 1874 [provided] [no usage info] [missing usage info prevents renaming] */
  17832. /*! export 1875 [provided] [no usage info] [missing usage info prevents renaming] */
  17833. /*! export 1876 [provided] [no usage info] [missing usage info prevents renaming] */
  17834. /*! export 1877 [provided] [no usage info] [missing usage info prevents renaming] */
  17835. /*! export 1878 [provided] [no usage info] [missing usage info prevents renaming] */
  17836. /*! export 1879 [provided] [no usage info] [missing usage info prevents renaming] */
  17837. /*! export 188 [provided] [no usage info] [missing usage info prevents renaming] */
  17838. /*! export 1880 [provided] [no usage info] [missing usage info prevents renaming] */
  17839. /*! export 1881 [provided] [no usage info] [missing usage info prevents renaming] */
  17840. /*! export 1882 [provided] [no usage info] [missing usage info prevents renaming] */
  17841. /*! export 1883 [provided] [no usage info] [missing usage info prevents renaming] */
  17842. /*! export 1884 [provided] [no usage info] [missing usage info prevents renaming] */
  17843. /*! export 1885 [provided] [no usage info] [missing usage info prevents renaming] */
  17844. /*! export 1886 [provided] [no usage info] [missing usage info prevents renaming] */
  17845. /*! export 1887 [provided] [no usage info] [missing usage info prevents renaming] */
  17846. /*! export 1888 [provided] [no usage info] [missing usage info prevents renaming] */
  17847. /*! export 1889 [provided] [no usage info] [missing usage info prevents renaming] */
  17848. /*! export 189 [provided] [no usage info] [missing usage info prevents renaming] */
  17849. /*! export 1890 [provided] [no usage info] [missing usage info prevents renaming] */
  17850. /*! export 1891 [provided] [no usage info] [missing usage info prevents renaming] */
  17851. /*! export 1892 [provided] [no usage info] [missing usage info prevents renaming] */
  17852. /*! export 1893 [provided] [no usage info] [missing usage info prevents renaming] */
  17853. /*! export 1894 [provided] [no usage info] [missing usage info prevents renaming] */
  17854. /*! export 1895 [provided] [no usage info] [missing usage info prevents renaming] */
  17855. /*! export 1896 [provided] [no usage info] [missing usage info prevents renaming] */
  17856. /*! export 1897 [provided] [no usage info] [missing usage info prevents renaming] */
  17857. /*! export 1898 [provided] [no usage info] [missing usage info prevents renaming] */
  17858. /*! export 1899 [provided] [no usage info] [missing usage info prevents renaming] */
  17859. /*! export 19 [provided] [no usage info] [missing usage info prevents renaming] */
  17860. /*! export 190 [provided] [no usage info] [missing usage info prevents renaming] */
  17861. /*! export 1900 [provided] [no usage info] [missing usage info prevents renaming] */
  17862. /*! export 1901 [provided] [no usage info] [missing usage info prevents renaming] */
  17863. /*! export 1902 [provided] [no usage info] [missing usage info prevents renaming] */
  17864. /*! export 1903 [provided] [no usage info] [missing usage info prevents renaming] */
  17865. /*! export 1904 [provided] [no usage info] [missing usage info prevents renaming] */
  17866. /*! export 1905 [provided] [no usage info] [missing usage info prevents renaming] */
  17867. /*! export 1906 [provided] [no usage info] [missing usage info prevents renaming] */
  17868. /*! export 1907 [provided] [no usage info] [missing usage info prevents renaming] */
  17869. /*! export 1908 [provided] [no usage info] [missing usage info prevents renaming] */
  17870. /*! export 1909 [provided] [no usage info] [missing usage info prevents renaming] */
  17871. /*! export 191 [provided] [no usage info] [missing usage info prevents renaming] */
  17872. /*! export 1910 [provided] [no usage info] [missing usage info prevents renaming] */
  17873. /*! export 1911 [provided] [no usage info] [missing usage info prevents renaming] */
  17874. /*! export 1912 [provided] [no usage info] [missing usage info prevents renaming] */
  17875. /*! export 1913 [provided] [no usage info] [missing usage info prevents renaming] */
  17876. /*! export 1914 [provided] [no usage info] [missing usage info prevents renaming] */
  17877. /*! export 1915 [provided] [no usage info] [missing usage info prevents renaming] */
  17878. /*! export 1916 [provided] [no usage info] [missing usage info prevents renaming] */
  17879. /*! export 1917 [provided] [no usage info] [missing usage info prevents renaming] */
  17880. /*! export 1918 [provided] [no usage info] [missing usage info prevents renaming] */
  17881. /*! export 1919 [provided] [no usage info] [missing usage info prevents renaming] */
  17882. /*! export 192 [provided] [no usage info] [missing usage info prevents renaming] */
  17883. /*! export 1920 [provided] [no usage info] [missing usage info prevents renaming] */
  17884. /*! export 1921 [provided] [no usage info] [missing usage info prevents renaming] */
  17885. /*! export 1922 [provided] [no usage info] [missing usage info prevents renaming] */
  17886. /*! export 1923 [provided] [no usage info] [missing usage info prevents renaming] */
  17887. /*! export 1924 [provided] [no usage info] [missing usage info prevents renaming] */
  17888. /*! export 1925 [provided] [no usage info] [missing usage info prevents renaming] */
  17889. /*! export 1926 [provided] [no usage info] [missing usage info prevents renaming] */
  17890. /*! export 1927 [provided] [no usage info] [missing usage info prevents renaming] */
  17891. /*! export 1928 [provided] [no usage info] [missing usage info prevents renaming] */
  17892. /*! export 1929 [provided] [no usage info] [missing usage info prevents renaming] */
  17893. /*! export 193 [provided] [no usage info] [missing usage info prevents renaming] */
  17894. /*! export 1930 [provided] [no usage info] [missing usage info prevents renaming] */
  17895. /*! export 1931 [provided] [no usage info] [missing usage info prevents renaming] */
  17896. /*! export 1932 [provided] [no usage info] [missing usage info prevents renaming] */
  17897. /*! export 1933 [provided] [no usage info] [missing usage info prevents renaming] */
  17898. /*! export 1934 [provided] [no usage info] [missing usage info prevents renaming] */
  17899. /*! export 1935 [provided] [no usage info] [missing usage info prevents renaming] */
  17900. /*! export 1936 [provided] [no usage info] [missing usage info prevents renaming] */
  17901. /*! export 1937 [provided] [no usage info] [missing usage info prevents renaming] */
  17902. /*! export 1938 [provided] [no usage info] [missing usage info prevents renaming] */
  17903. /*! export 1939 [provided] [no usage info] [missing usage info prevents renaming] */
  17904. /*! export 194 [provided] [no usage info] [missing usage info prevents renaming] */
  17905. /*! export 1940 [provided] [no usage info] [missing usage info prevents renaming] */
  17906. /*! export 1941 [provided] [no usage info] [missing usage info prevents renaming] */
  17907. /*! export 1942 [provided] [no usage info] [missing usage info prevents renaming] */
  17908. /*! export 1943 [provided] [no usage info] [missing usage info prevents renaming] */
  17909. /*! export 1944 [provided] [no usage info] [missing usage info prevents renaming] */
  17910. /*! export 1945 [provided] [no usage info] [missing usage info prevents renaming] */
  17911. /*! export 1946 [provided] [no usage info] [missing usage info prevents renaming] */
  17912. /*! export 1947 [provided] [no usage info] [missing usage info prevents renaming] */
  17913. /*! export 1948 [provided] [no usage info] [missing usage info prevents renaming] */
  17914. /*! export 1949 [provided] [no usage info] [missing usage info prevents renaming] */
  17915. /*! export 195 [provided] [no usage info] [missing usage info prevents renaming] */
  17916. /*! export 1950 [provided] [no usage info] [missing usage info prevents renaming] */
  17917. /*! export 1951 [provided] [no usage info] [missing usage info prevents renaming] */
  17918. /*! export 1952 [provided] [no usage info] [missing usage info prevents renaming] */
  17919. /*! export 1953 [provided] [no usage info] [missing usage info prevents renaming] */
  17920. /*! export 1954 [provided] [no usage info] [missing usage info prevents renaming] */
  17921. /*! export 1955 [provided] [no usage info] [missing usage info prevents renaming] */
  17922. /*! export 1956 [provided] [no usage info] [missing usage info prevents renaming] */
  17923. /*! export 1957 [provided] [no usage info] [missing usage info prevents renaming] */
  17924. /*! export 1958 [provided] [no usage info] [missing usage info prevents renaming] */
  17925. /*! export 1959 [provided] [no usage info] [missing usage info prevents renaming] */
  17926. /*! export 196 [provided] [no usage info] [missing usage info prevents renaming] */
  17927. /*! export 1960 [provided] [no usage info] [missing usage info prevents renaming] */
  17928. /*! export 1961 [provided] [no usage info] [missing usage info prevents renaming] */
  17929. /*! export 1962 [provided] [no usage info] [missing usage info prevents renaming] */
  17930. /*! export 1963 [provided] [no usage info] [missing usage info prevents renaming] */
  17931. /*! export 1964 [provided] [no usage info] [missing usage info prevents renaming] */
  17932. /*! export 1965 [provided] [no usage info] [missing usage info prevents renaming] */
  17933. /*! export 1966 [provided] [no usage info] [missing usage info prevents renaming] */
  17934. /*! export 1967 [provided] [no usage info] [missing usage info prevents renaming] */
  17935. /*! export 1968 [provided] [no usage info] [missing usage info prevents renaming] */
  17936. /*! export 1969 [provided] [no usage info] [missing usage info prevents renaming] */
  17937. /*! export 197 [provided] [no usage info] [missing usage info prevents renaming] */
  17938. /*! export 1970 [provided] [no usage info] [missing usage info prevents renaming] */
  17939. /*! export 1971 [provided] [no usage info] [missing usage info prevents renaming] */
  17940. /*! export 1972 [provided] [no usage info] [missing usage info prevents renaming] */
  17941. /*! export 1973 [provided] [no usage info] [missing usage info prevents renaming] */
  17942. /*! export 1974 [provided] [no usage info] [missing usage info prevents renaming] */
  17943. /*! export 1975 [provided] [no usage info] [missing usage info prevents renaming] */
  17944. /*! export 1976 [provided] [no usage info] [missing usage info prevents renaming] */
  17945. /*! export 1977 [provided] [no usage info] [missing usage info prevents renaming] */
  17946. /*! export 1978 [provided] [no usage info] [missing usage info prevents renaming] */
  17947. /*! export 1979 [provided] [no usage info] [missing usage info prevents renaming] */
  17948. /*! export 198 [provided] [no usage info] [missing usage info prevents renaming] */
  17949. /*! export 1980 [provided] [no usage info] [missing usage info prevents renaming] */
  17950. /*! export 1981 [provided] [no usage info] [missing usage info prevents renaming] */
  17951. /*! export 1982 [provided] [no usage info] [missing usage info prevents renaming] */
  17952. /*! export 1983 [provided] [no usage info] [missing usage info prevents renaming] */
  17953. /*! export 1984 [provided] [no usage info] [missing usage info prevents renaming] */
  17954. /*! export 1985 [provided] [no usage info] [missing usage info prevents renaming] */
  17955. /*! export 1986 [provided] [no usage info] [missing usage info prevents renaming] */
  17956. /*! export 1987 [provided] [no usage info] [missing usage info prevents renaming] */
  17957. /*! export 1988 [provided] [no usage info] [missing usage info prevents renaming] */
  17958. /*! export 1989 [provided] [no usage info] [missing usage info prevents renaming] */
  17959. /*! export 199 [provided] [no usage info] [missing usage info prevents renaming] */
  17960. /*! export 1990 [provided] [no usage info] [missing usage info prevents renaming] */
  17961. /*! export 1991 [provided] [no usage info] [missing usage info prevents renaming] */
  17962. /*! export 1992 [provided] [no usage info] [missing usage info prevents renaming] */
  17963. /*! export 1993 [provided] [no usage info] [missing usage info prevents renaming] */
  17964. /*! export 1994 [provided] [no usage info] [missing usage info prevents renaming] */
  17965. /*! export 1995 [provided] [no usage info] [missing usage info prevents renaming] */
  17966. /*! export 1996 [provided] [no usage info] [missing usage info prevents renaming] */
  17967. /*! export 1997 [provided] [no usage info] [missing usage info prevents renaming] */
  17968. /*! export 1998 [provided] [no usage info] [missing usage info prevents renaming] */
  17969. /*! export 1999 [provided] [no usage info] [missing usage info prevents renaming] */
  17970. /*! export 2 [provided] [no usage info] [missing usage info prevents renaming] */
  17971. /*! export 20 [provided] [no usage info] [missing usage info prevents renaming] */
  17972. /*! export 200 [provided] [no usage info] [missing usage info prevents renaming] */
  17973. /*! export 2000 [provided] [no usage info] [missing usage info prevents renaming] */
  17974. /*! export 2001 [provided] [no usage info] [missing usage info prevents renaming] */
  17975. /*! export 2002 [provided] [no usage info] [missing usage info prevents renaming] */
  17976. /*! export 2003 [provided] [no usage info] [missing usage info prevents renaming] */
  17977. /*! export 2004 [provided] [no usage info] [missing usage info prevents renaming] */
  17978. /*! export 2005 [provided] [no usage info] [missing usage info prevents renaming] */
  17979. /*! export 2006 [provided] [no usage info] [missing usage info prevents renaming] */
  17980. /*! export 2007 [provided] [no usage info] [missing usage info prevents renaming] */
  17981. /*! export 2008 [provided] [no usage info] [missing usage info prevents renaming] */
  17982. /*! export 2009 [provided] [no usage info] [missing usage info prevents renaming] */
  17983. /*! export 201 [provided] [no usage info] [missing usage info prevents renaming] */
  17984. /*! export 2010 [provided] [no usage info] [missing usage info prevents renaming] */
  17985. /*! export 2011 [provided] [no usage info] [missing usage info prevents renaming] */
  17986. /*! export 2012 [provided] [no usage info] [missing usage info prevents renaming] */
  17987. /*! export 2013 [provided] [no usage info] [missing usage info prevents renaming] */
  17988. /*! export 2014 [provided] [no usage info] [missing usage info prevents renaming] */
  17989. /*! export 2015 [provided] [no usage info] [missing usage info prevents renaming] */
  17990. /*! export 2016 [provided] [no usage info] [missing usage info prevents renaming] */
  17991. /*! export 2017 [provided] [no usage info] [missing usage info prevents renaming] */
  17992. /*! export 2018 [provided] [no usage info] [missing usage info prevents renaming] */
  17993. /*! export 2019 [provided] [no usage info] [missing usage info prevents renaming] */
  17994. /*! export 202 [provided] [no usage info] [missing usage info prevents renaming] */
  17995. /*! export 2020 [provided] [no usage info] [missing usage info prevents renaming] */
  17996. /*! export 2021 [provided] [no usage info] [missing usage info prevents renaming] */
  17997. /*! export 2022 [provided] [no usage info] [missing usage info prevents renaming] */
  17998. /*! export 2023 [provided] [no usage info] [missing usage info prevents renaming] */
  17999. /*! export 2024 [provided] [no usage info] [missing usage info prevents renaming] */
  18000. /*! export 2025 [provided] [no usage info] [missing usage info prevents renaming] */
  18001. /*! export 2026 [provided] [no usage info] [missing usage info prevents renaming] */
  18002. /*! export 2027 [provided] [no usage info] [missing usage info prevents renaming] */
  18003. /*! export 2028 [provided] [no usage info] [missing usage info prevents renaming] */
  18004. /*! export 2029 [provided] [no usage info] [missing usage info prevents renaming] */
  18005. /*! export 203 [provided] [no usage info] [missing usage info prevents renaming] */
  18006. /*! export 2030 [provided] [no usage info] [missing usage info prevents renaming] */
  18007. /*! export 2031 [provided] [no usage info] [missing usage info prevents renaming] */
  18008. /*! export 2032 [provided] [no usage info] [missing usage info prevents renaming] */
  18009. /*! export 2033 [provided] [no usage info] [missing usage info prevents renaming] */
  18010. /*! export 2034 [provided] [no usage info] [missing usage info prevents renaming] */
  18011. /*! export 2035 [provided] [no usage info] [missing usage info prevents renaming] */
  18012. /*! export 2036 [provided] [no usage info] [missing usage info prevents renaming] */
  18013. /*! export 2037 [provided] [no usage info] [missing usage info prevents renaming] */
  18014. /*! export 2038 [provided] [no usage info] [missing usage info prevents renaming] */
  18015. /*! export 2039 [provided] [no usage info] [missing usage info prevents renaming] */
  18016. /*! export 204 [provided] [no usage info] [missing usage info prevents renaming] */
  18017. /*! export 2040 [provided] [no usage info] [missing usage info prevents renaming] */
  18018. /*! export 2041 [provided] [no usage info] [missing usage info prevents renaming] */
  18019. /*! export 2042 [provided] [no usage info] [missing usage info prevents renaming] */
  18020. /*! export 2043 [provided] [no usage info] [missing usage info prevents renaming] */
  18021. /*! export 2044 [provided] [no usage info] [missing usage info prevents renaming] */
  18022. /*! export 2045 [provided] [no usage info] [missing usage info prevents renaming] */
  18023. /*! export 2046 [provided] [no usage info] [missing usage info prevents renaming] */
  18024. /*! export 2047 [provided] [no usage info] [missing usage info prevents renaming] */
  18025. /*! export 2048 [provided] [no usage info] [missing usage info prevents renaming] */
  18026. /*! export 2049 [provided] [no usage info] [missing usage info prevents renaming] */
  18027. /*! export 205 [provided] [no usage info] [missing usage info prevents renaming] */
  18028. /*! export 2050 [provided] [no usage info] [missing usage info prevents renaming] */
  18029. /*! export 2051 [provided] [no usage info] [missing usage info prevents renaming] */
  18030. /*! export 2052 [provided] [no usage info] [missing usage info prevents renaming] */
  18031. /*! export 2053 [provided] [no usage info] [missing usage info prevents renaming] */
  18032. /*! export 2054 [provided] [no usage info] [missing usage info prevents renaming] */
  18033. /*! export 2055 [provided] [no usage info] [missing usage info prevents renaming] */
  18034. /*! export 2056 [provided] [no usage info] [missing usage info prevents renaming] */
  18035. /*! export 2057 [provided] [no usage info] [missing usage info prevents renaming] */
  18036. /*! export 2058 [provided] [no usage info] [missing usage info prevents renaming] */
  18037. /*! export 2059 [provided] [no usage info] [missing usage info prevents renaming] */
  18038. /*! export 206 [provided] [no usage info] [missing usage info prevents renaming] */
  18039. /*! export 2060 [provided] [no usage info] [missing usage info prevents renaming] */
  18040. /*! export 2061 [provided] [no usage info] [missing usage info prevents renaming] */
  18041. /*! export 2062 [provided] [no usage info] [missing usage info prevents renaming] */
  18042. /*! export 2063 [provided] [no usage info] [missing usage info prevents renaming] */
  18043. /*! export 2064 [provided] [no usage info] [missing usage info prevents renaming] */
  18044. /*! export 2065 [provided] [no usage info] [missing usage info prevents renaming] */
  18045. /*! export 2066 [provided] [no usage info] [missing usage info prevents renaming] */
  18046. /*! export 2067 [provided] [no usage info] [missing usage info prevents renaming] */
  18047. /*! export 2068 [provided] [no usage info] [missing usage info prevents renaming] */
  18048. /*! export 2069 [provided] [no usage info] [missing usage info prevents renaming] */
  18049. /*! export 207 [provided] [no usage info] [missing usage info prevents renaming] */
  18050. /*! export 2070 [provided] [no usage info] [missing usage info prevents renaming] */
  18051. /*! export 2071 [provided] [no usage info] [missing usage info prevents renaming] */
  18052. /*! export 2072 [provided] [no usage info] [missing usage info prevents renaming] */
  18053. /*! export 2073 [provided] [no usage info] [missing usage info prevents renaming] */
  18054. /*! export 2074 [provided] [no usage info] [missing usage info prevents renaming] */
  18055. /*! export 2075 [provided] [no usage info] [missing usage info prevents renaming] */
  18056. /*! export 2076 [provided] [no usage info] [missing usage info prevents renaming] */
  18057. /*! export 2077 [provided] [no usage info] [missing usage info prevents renaming] */
  18058. /*! export 2078 [provided] [no usage info] [missing usage info prevents renaming] */
  18059. /*! export 2079 [provided] [no usage info] [missing usage info prevents renaming] */
  18060. /*! export 208 [provided] [no usage info] [missing usage info prevents renaming] */
  18061. /*! export 2080 [provided] [no usage info] [missing usage info prevents renaming] */
  18062. /*! export 2081 [provided] [no usage info] [missing usage info prevents renaming] */
  18063. /*! export 2082 [provided] [no usage info] [missing usage info prevents renaming] */
  18064. /*! export 2083 [provided] [no usage info] [missing usage info prevents renaming] */
  18065. /*! export 2084 [provided] [no usage info] [missing usage info prevents renaming] */
  18066. /*! export 2085 [provided] [no usage info] [missing usage info prevents renaming] */
  18067. /*! export 2086 [provided] [no usage info] [missing usage info prevents renaming] */
  18068. /*! export 2087 [provided] [no usage info] [missing usage info prevents renaming] */
  18069. /*! export 2088 [provided] [no usage info] [missing usage info prevents renaming] */
  18070. /*! export 2089 [provided] [no usage info] [missing usage info prevents renaming] */
  18071. /*! export 209 [provided] [no usage info] [missing usage info prevents renaming] */
  18072. /*! export 2090 [provided] [no usage info] [missing usage info prevents renaming] */
  18073. /*! export 2091 [provided] [no usage info] [missing usage info prevents renaming] */
  18074. /*! export 2092 [provided] [no usage info] [missing usage info prevents renaming] */
  18075. /*! export 2093 [provided] [no usage info] [missing usage info prevents renaming] */
  18076. /*! export 2094 [provided] [no usage info] [missing usage info prevents renaming] */
  18077. /*! export 2095 [provided] [no usage info] [missing usage info prevents renaming] */
  18078. /*! export 2096 [provided] [no usage info] [missing usage info prevents renaming] */
  18079. /*! export 2097 [provided] [no usage info] [missing usage info prevents renaming] */
  18080. /*! export 2098 [provided] [no usage info] [missing usage info prevents renaming] */
  18081. /*! export 2099 [provided] [no usage info] [missing usage info prevents renaming] */
  18082. /*! export 21 [provided] [no usage info] [missing usage info prevents renaming] */
  18083. /*! export 210 [provided] [no usage info] [missing usage info prevents renaming] */
  18084. /*! export 2100 [provided] [no usage info] [missing usage info prevents renaming] */
  18085. /*! export 2101 [provided] [no usage info] [missing usage info prevents renaming] */
  18086. /*! export 2102 [provided] [no usage info] [missing usage info prevents renaming] */
  18087. /*! export 2103 [provided] [no usage info] [missing usage info prevents renaming] */
  18088. /*! export 2104 [provided] [no usage info] [missing usage info prevents renaming] */
  18089. /*! export 2105 [provided] [no usage info] [missing usage info prevents renaming] */
  18090. /*! export 2106 [provided] [no usage info] [missing usage info prevents renaming] */
  18091. /*! export 2107 [provided] [no usage info] [missing usage info prevents renaming] */
  18092. /*! export 2108 [provided] [no usage info] [missing usage info prevents renaming] */
  18093. /*! export 2109 [provided] [no usage info] [missing usage info prevents renaming] */
  18094. /*! export 211 [provided] [no usage info] [missing usage info prevents renaming] */
  18095. /*! export 2110 [provided] [no usage info] [missing usage info prevents renaming] */
  18096. /*! export 2111 [provided] [no usage info] [missing usage info prevents renaming] */
  18097. /*! export 2112 [provided] [no usage info] [missing usage info prevents renaming] */
  18098. /*! export 2113 [provided] [no usage info] [missing usage info prevents renaming] */
  18099. /*! export 2114 [provided] [no usage info] [missing usage info prevents renaming] */
  18100. /*! export 2115 [provided] [no usage info] [missing usage info prevents renaming] */
  18101. /*! export 2116 [provided] [no usage info] [missing usage info prevents renaming] */
  18102. /*! export 2117 [provided] [no usage info] [missing usage info prevents renaming] */
  18103. /*! export 2118 [provided] [no usage info] [missing usage info prevents renaming] */
  18104. /*! export 2119 [provided] [no usage info] [missing usage info prevents renaming] */
  18105. /*! export 212 [provided] [no usage info] [missing usage info prevents renaming] */
  18106. /*! export 2120 [provided] [no usage info] [missing usage info prevents renaming] */
  18107. /*! export 2121 [provided] [no usage info] [missing usage info prevents renaming] */
  18108. /*! export 2122 [provided] [no usage info] [missing usage info prevents renaming] */
  18109. /*! export 2123 [provided] [no usage info] [missing usage info prevents renaming] */
  18110. /*! export 2124 [provided] [no usage info] [missing usage info prevents renaming] */
  18111. /*! export 2125 [provided] [no usage info] [missing usage info prevents renaming] */
  18112. /*! export 2126 [provided] [no usage info] [missing usage info prevents renaming] */
  18113. /*! export 2127 [provided] [no usage info] [missing usage info prevents renaming] */
  18114. /*! export 2128 [provided] [no usage info] [missing usage info prevents renaming] */
  18115. /*! export 2129 [provided] [no usage info] [missing usage info prevents renaming] */
  18116. /*! export 213 [provided] [no usage info] [missing usage info prevents renaming] */
  18117. /*! export 2130 [provided] [no usage info] [missing usage info prevents renaming] */
  18118. /*! export 2131 [provided] [no usage info] [missing usage info prevents renaming] */
  18119. /*! export 2132 [provided] [no usage info] [missing usage info prevents renaming] */
  18120. /*! export 2133 [provided] [no usage info] [missing usage info prevents renaming] */
  18121. /*! export 2134 [provided] [no usage info] [missing usage info prevents renaming] */
  18122. /*! export 2135 [provided] [no usage info] [missing usage info prevents renaming] */
  18123. /*! export 2136 [provided] [no usage info] [missing usage info prevents renaming] */
  18124. /*! export 2137 [provided] [no usage info] [missing usage info prevents renaming] */
  18125. /*! export 2138 [provided] [no usage info] [missing usage info prevents renaming] */
  18126. /*! export 2139 [provided] [no usage info] [missing usage info prevents renaming] */
  18127. /*! export 214 [provided] [no usage info] [missing usage info prevents renaming] */
  18128. /*! export 2140 [provided] [no usage info] [missing usage info prevents renaming] */
  18129. /*! export 2141 [provided] [no usage info] [missing usage info prevents renaming] */
  18130. /*! export 2142 [provided] [no usage info] [missing usage info prevents renaming] */
  18131. /*! export 2143 [provided] [no usage info] [missing usage info prevents renaming] */
  18132. /*! export 2144 [provided] [no usage info] [missing usage info prevents renaming] */
  18133. /*! export 2145 [provided] [no usage info] [missing usage info prevents renaming] */
  18134. /*! export 2146 [provided] [no usage info] [missing usage info prevents renaming] */
  18135. /*! export 2147 [provided] [no usage info] [missing usage info prevents renaming] */
  18136. /*! export 2148 [provided] [no usage info] [missing usage info prevents renaming] */
  18137. /*! export 2149 [provided] [no usage info] [missing usage info prevents renaming] */
  18138. /*! export 215 [provided] [no usage info] [missing usage info prevents renaming] */
  18139. /*! export 2150 [provided] [no usage info] [missing usage info prevents renaming] */
  18140. /*! export 2151 [provided] [no usage info] [missing usage info prevents renaming] */
  18141. /*! export 2152 [provided] [no usage info] [missing usage info prevents renaming] */
  18142. /*! export 2153 [provided] [no usage info] [missing usage info prevents renaming] */
  18143. /*! export 2154 [provided] [no usage info] [missing usage info prevents renaming] */
  18144. /*! export 2155 [provided] [no usage info] [missing usage info prevents renaming] */
  18145. /*! export 2156 [provided] [no usage info] [missing usage info prevents renaming] */
  18146. /*! export 2157 [provided] [no usage info] [missing usage info prevents renaming] */
  18147. /*! export 2158 [provided] [no usage info] [missing usage info prevents renaming] */
  18148. /*! export 2159 [provided] [no usage info] [missing usage info prevents renaming] */
  18149. /*! export 216 [provided] [no usage info] [missing usage info prevents renaming] */
  18150. /*! export 2160 [provided] [no usage info] [missing usage info prevents renaming] */
  18151. /*! export 2161 [provided] [no usage info] [missing usage info prevents renaming] */
  18152. /*! export 2162 [provided] [no usage info] [missing usage info prevents renaming] */
  18153. /*! export 2163 [provided] [no usage info] [missing usage info prevents renaming] */
  18154. /*! export 2164 [provided] [no usage info] [missing usage info prevents renaming] */
  18155. /*! export 2165 [provided] [no usage info] [missing usage info prevents renaming] */
  18156. /*! export 2166 [provided] [no usage info] [missing usage info prevents renaming] */
  18157. /*! export 2167 [provided] [no usage info] [missing usage info prevents renaming] */
  18158. /*! export 2168 [provided] [no usage info] [missing usage info prevents renaming] */
  18159. /*! export 2169 [provided] [no usage info] [missing usage info prevents renaming] */
  18160. /*! export 217 [provided] [no usage info] [missing usage info prevents renaming] */
  18161. /*! export 2170 [provided] [no usage info] [missing usage info prevents renaming] */
  18162. /*! export 2171 [provided] [no usage info] [missing usage info prevents renaming] */
  18163. /*! export 2172 [provided] [no usage info] [missing usage info prevents renaming] */
  18164. /*! export 2173 [provided] [no usage info] [missing usage info prevents renaming] */
  18165. /*! export 2174 [provided] [no usage info] [missing usage info prevents renaming] */
  18166. /*! export 2175 [provided] [no usage info] [missing usage info prevents renaming] */
  18167. /*! export 2176 [provided] [no usage info] [missing usage info prevents renaming] */
  18168. /*! export 2177 [provided] [no usage info] [missing usage info prevents renaming] */
  18169. /*! export 2178 [provided] [no usage info] [missing usage info prevents renaming] */
  18170. /*! export 2179 [provided] [no usage info] [missing usage info prevents renaming] */
  18171. /*! export 218 [provided] [no usage info] [missing usage info prevents renaming] */
  18172. /*! export 2180 [provided] [no usage info] [missing usage info prevents renaming] */
  18173. /*! export 2181 [provided] [no usage info] [missing usage info prevents renaming] */
  18174. /*! export 2182 [provided] [no usage info] [missing usage info prevents renaming] */
  18175. /*! export 2183 [provided] [no usage info] [missing usage info prevents renaming] */
  18176. /*! export 2184 [provided] [no usage info] [missing usage info prevents renaming] */
  18177. /*! export 2185 [provided] [no usage info] [missing usage info prevents renaming] */
  18178. /*! export 2186 [provided] [no usage info] [missing usage info prevents renaming] */
  18179. /*! export 2187 [provided] [no usage info] [missing usage info prevents renaming] */
  18180. /*! export 2188 [provided] [no usage info] [missing usage info prevents renaming] */
  18181. /*! export 2189 [provided] [no usage info] [missing usage info prevents renaming] */
  18182. /*! export 219 [provided] [no usage info] [missing usage info prevents renaming] */
  18183. /*! export 2190 [provided] [no usage info] [missing usage info prevents renaming] */
  18184. /*! export 2191 [provided] [no usage info] [missing usage info prevents renaming] */
  18185. /*! export 2192 [provided] [no usage info] [missing usage info prevents renaming] */
  18186. /*! export 2193 [provided] [no usage info] [missing usage info prevents renaming] */
  18187. /*! export 2194 [provided] [no usage info] [missing usage info prevents renaming] */
  18188. /*! export 2195 [provided] [no usage info] [missing usage info prevents renaming] */
  18189. /*! export 2196 [provided] [no usage info] [missing usage info prevents renaming] */
  18190. /*! export 2197 [provided] [no usage info] [missing usage info prevents renaming] */
  18191. /*! export 2198 [provided] [no usage info] [missing usage info prevents renaming] */
  18192. /*! export 2199 [provided] [no usage info] [missing usage info prevents renaming] */
  18193. /*! export 22 [provided] [no usage info] [missing usage info prevents renaming] */
  18194. /*! export 220 [provided] [no usage info] [missing usage info prevents renaming] */
  18195. /*! export 2200 [provided] [no usage info] [missing usage info prevents renaming] */
  18196. /*! export 2201 [provided] [no usage info] [missing usage info prevents renaming] */
  18197. /*! export 2202 [provided] [no usage info] [missing usage info prevents renaming] */
  18198. /*! export 2203 [provided] [no usage info] [missing usage info prevents renaming] */
  18199. /*! export 2204 [provided] [no usage info] [missing usage info prevents renaming] */
  18200. /*! export 2205 [provided] [no usage info] [missing usage info prevents renaming] */
  18201. /*! export 2206 [provided] [no usage info] [missing usage info prevents renaming] */
  18202. /*! export 2207 [provided] [no usage info] [missing usage info prevents renaming] */
  18203. /*! export 2208 [provided] [no usage info] [missing usage info prevents renaming] */
  18204. /*! export 2209 [provided] [no usage info] [missing usage info prevents renaming] */
  18205. /*! export 221 [provided] [no usage info] [missing usage info prevents renaming] */
  18206. /*! export 2210 [provided] [no usage info] [missing usage info prevents renaming] */
  18207. /*! export 2211 [provided] [no usage info] [missing usage info prevents renaming] */
  18208. /*! export 2212 [provided] [no usage info] [missing usage info prevents renaming] */
  18209. /*! export 2213 [provided] [no usage info] [missing usage info prevents renaming] */
  18210. /*! export 2214 [provided] [no usage info] [missing usage info prevents renaming] */
  18211. /*! export 2215 [provided] [no usage info] [missing usage info prevents renaming] */
  18212. /*! export 2216 [provided] [no usage info] [missing usage info prevents renaming] */
  18213. /*! export 2217 [provided] [no usage info] [missing usage info prevents renaming] */
  18214. /*! export 2218 [provided] [no usage info] [missing usage info prevents renaming] */
  18215. /*! export 2219 [provided] [no usage info] [missing usage info prevents renaming] */
  18216. /*! export 222 [provided] [no usage info] [missing usage info prevents renaming] */
  18217. /*! export 2220 [provided] [no usage info] [missing usage info prevents renaming] */
  18218. /*! export 2221 [provided] [no usage info] [missing usage info prevents renaming] */
  18219. /*! export 2222 [provided] [no usage info] [missing usage info prevents renaming] */
  18220. /*! export 2223 [provided] [no usage info] [missing usage info prevents renaming] */
  18221. /*! export 2224 [provided] [no usage info] [missing usage info prevents renaming] */
  18222. /*! export 2225 [provided] [no usage info] [missing usage info prevents renaming] */
  18223. /*! export 2226 [provided] [no usage info] [missing usage info prevents renaming] */
  18224. /*! export 2227 [provided] [no usage info] [missing usage info prevents renaming] */
  18225. /*! export 2228 [provided] [no usage info] [missing usage info prevents renaming] */
  18226. /*! export 2229 [provided] [no usage info] [missing usage info prevents renaming] */
  18227. /*! export 223 [provided] [no usage info] [missing usage info prevents renaming] */
  18228. /*! export 2230 [provided] [no usage info] [missing usage info prevents renaming] */
  18229. /*! export 2231 [provided] [no usage info] [missing usage info prevents renaming] */
  18230. /*! export 2232 [provided] [no usage info] [missing usage info prevents renaming] */
  18231. /*! export 2233 [provided] [no usage info] [missing usage info prevents renaming] */
  18232. /*! export 2234 [provided] [no usage info] [missing usage info prevents renaming] */
  18233. /*! export 2235 [provided] [no usage info] [missing usage info prevents renaming] */
  18234. /*! export 2236 [provided] [no usage info] [missing usage info prevents renaming] */
  18235. /*! export 2237 [provided] [no usage info] [missing usage info prevents renaming] */
  18236. /*! export 2238 [provided] [no usage info] [missing usage info prevents renaming] */
  18237. /*! export 2239 [provided] [no usage info] [missing usage info prevents renaming] */
  18238. /*! export 224 [provided] [no usage info] [missing usage info prevents renaming] */
  18239. /*! export 2240 [provided] [no usage info] [missing usage info prevents renaming] */
  18240. /*! export 2241 [provided] [no usage info] [missing usage info prevents renaming] */
  18241. /*! export 2242 [provided] [no usage info] [missing usage info prevents renaming] */
  18242. /*! export 2243 [provided] [no usage info] [missing usage info prevents renaming] */
  18243. /*! export 2244 [provided] [no usage info] [missing usage info prevents renaming] */
  18244. /*! export 2245 [provided] [no usage info] [missing usage info prevents renaming] */
  18245. /*! export 2246 [provided] [no usage info] [missing usage info prevents renaming] */
  18246. /*! export 2247 [provided] [no usage info] [missing usage info prevents renaming] */
  18247. /*! export 2248 [provided] [no usage info] [missing usage info prevents renaming] */
  18248. /*! export 2249 [provided] [no usage info] [missing usage info prevents renaming] */
  18249. /*! export 225 [provided] [no usage info] [missing usage info prevents renaming] */
  18250. /*! export 2250 [provided] [no usage info] [missing usage info prevents renaming] */
  18251. /*! export 2251 [provided] [no usage info] [missing usage info prevents renaming] */
  18252. /*! export 2252 [provided] [no usage info] [missing usage info prevents renaming] */
  18253. /*! export 2253 [provided] [no usage info] [missing usage info prevents renaming] */
  18254. /*! export 2254 [provided] [no usage info] [missing usage info prevents renaming] */
  18255. /*! export 2255 [provided] [no usage info] [missing usage info prevents renaming] */
  18256. /*! export 2256 [provided] [no usage info] [missing usage info prevents renaming] */
  18257. /*! export 2257 [provided] [no usage info] [missing usage info prevents renaming] */
  18258. /*! export 2258 [provided] [no usage info] [missing usage info prevents renaming] */
  18259. /*! export 2259 [provided] [no usage info] [missing usage info prevents renaming] */
  18260. /*! export 226 [provided] [no usage info] [missing usage info prevents renaming] */
  18261. /*! export 2260 [provided] [no usage info] [missing usage info prevents renaming] */
  18262. /*! export 2261 [provided] [no usage info] [missing usage info prevents renaming] */
  18263. /*! export 2262 [provided] [no usage info] [missing usage info prevents renaming] */
  18264. /*! export 2263 [provided] [no usage info] [missing usage info prevents renaming] */
  18265. /*! export 2264 [provided] [no usage info] [missing usage info prevents renaming] */
  18266. /*! export 2265 [provided] [no usage info] [missing usage info prevents renaming] */
  18267. /*! export 2266 [provided] [no usage info] [missing usage info prevents renaming] */
  18268. /*! export 2267 [provided] [no usage info] [missing usage info prevents renaming] */
  18269. /*! export 2268 [provided] [no usage info] [missing usage info prevents renaming] */
  18270. /*! export 2269 [provided] [no usage info] [missing usage info prevents renaming] */
  18271. /*! export 227 [provided] [no usage info] [missing usage info prevents renaming] */
  18272. /*! export 2270 [provided] [no usage info] [missing usage info prevents renaming] */
  18273. /*! export 2271 [provided] [no usage info] [missing usage info prevents renaming] */
  18274. /*! export 2272 [provided] [no usage info] [missing usage info prevents renaming] */
  18275. /*! export 2273 [provided] [no usage info] [missing usage info prevents renaming] */
  18276. /*! export 2274 [provided] [no usage info] [missing usage info prevents renaming] */
  18277. /*! export 2275 [provided] [no usage info] [missing usage info prevents renaming] */
  18278. /*! export 2276 [provided] [no usage info] [missing usage info prevents renaming] */
  18279. /*! export 2277 [provided] [no usage info] [missing usage info prevents renaming] */
  18280. /*! export 2278 [provided] [no usage info] [missing usage info prevents renaming] */
  18281. /*! export 2279 [provided] [no usage info] [missing usage info prevents renaming] */
  18282. /*! export 228 [provided] [no usage info] [missing usage info prevents renaming] */
  18283. /*! export 2280 [provided] [no usage info] [missing usage info prevents renaming] */
  18284. /*! export 2281 [provided] [no usage info] [missing usage info prevents renaming] */
  18285. /*! export 2282 [provided] [no usage info] [missing usage info prevents renaming] */
  18286. /*! export 2283 [provided] [no usage info] [missing usage info prevents renaming] */
  18287. /*! export 2284 [provided] [no usage info] [missing usage info prevents renaming] */
  18288. /*! export 2285 [provided] [no usage info] [missing usage info prevents renaming] */
  18289. /*! export 2286 [provided] [no usage info] [missing usage info prevents renaming] */
  18290. /*! export 2287 [provided] [no usage info] [missing usage info prevents renaming] */
  18291. /*! export 2288 [provided] [no usage info] [missing usage info prevents renaming] */
  18292. /*! export 2289 [provided] [no usage info] [missing usage info prevents renaming] */
  18293. /*! export 229 [provided] [no usage info] [missing usage info prevents renaming] */
  18294. /*! export 2290 [provided] [no usage info] [missing usage info prevents renaming] */
  18295. /*! export 2291 [provided] [no usage info] [missing usage info prevents renaming] */
  18296. /*! export 2292 [provided] [no usage info] [missing usage info prevents renaming] */
  18297. /*! export 2293 [provided] [no usage info] [missing usage info prevents renaming] */
  18298. /*! export 2294 [provided] [no usage info] [missing usage info prevents renaming] */
  18299. /*! export 2295 [provided] [no usage info] [missing usage info prevents renaming] */
  18300. /*! export 2296 [provided] [no usage info] [missing usage info prevents renaming] */
  18301. /*! export 2297 [provided] [no usage info] [missing usage info prevents renaming] */
  18302. /*! export 2298 [provided] [no usage info] [missing usage info prevents renaming] */
  18303. /*! export 2299 [provided] [no usage info] [missing usage info prevents renaming] */
  18304. /*! export 23 [provided] [no usage info] [missing usage info prevents renaming] */
  18305. /*! export 230 [provided] [no usage info] [missing usage info prevents renaming] */
  18306. /*! export 2300 [provided] [no usage info] [missing usage info prevents renaming] */
  18307. /*! export 2301 [provided] [no usage info] [missing usage info prevents renaming] */
  18308. /*! export 2302 [provided] [no usage info] [missing usage info prevents renaming] */
  18309. /*! export 2303 [provided] [no usage info] [missing usage info prevents renaming] */
  18310. /*! export 2304 [provided] [no usage info] [missing usage info prevents renaming] */
  18311. /*! export 2305 [provided] [no usage info] [missing usage info prevents renaming] */
  18312. /*! export 2306 [provided] [no usage info] [missing usage info prevents renaming] */
  18313. /*! export 2307 [provided] [no usage info] [missing usage info prevents renaming] */
  18314. /*! export 2308 [provided] [no usage info] [missing usage info prevents renaming] */
  18315. /*! export 2309 [provided] [no usage info] [missing usage info prevents renaming] */
  18316. /*! export 231 [provided] [no usage info] [missing usage info prevents renaming] */
  18317. /*! export 2310 [provided] [no usage info] [missing usage info prevents renaming] */
  18318. /*! export 2311 [provided] [no usage info] [missing usage info prevents renaming] */
  18319. /*! export 2312 [provided] [no usage info] [missing usage info prevents renaming] */
  18320. /*! export 2313 [provided] [no usage info] [missing usage info prevents renaming] */
  18321. /*! export 2314 [provided] [no usage info] [missing usage info prevents renaming] */
  18322. /*! export 2315 [provided] [no usage info] [missing usage info prevents renaming] */
  18323. /*! export 2316 [provided] [no usage info] [missing usage info prevents renaming] */
  18324. /*! export 2317 [provided] [no usage info] [missing usage info prevents renaming] */
  18325. /*! export 2318 [provided] [no usage info] [missing usage info prevents renaming] */
  18326. /*! export 2319 [provided] [no usage info] [missing usage info prevents renaming] */
  18327. /*! export 232 [provided] [no usage info] [missing usage info prevents renaming] */
  18328. /*! export 2320 [provided] [no usage info] [missing usage info prevents renaming] */
  18329. /*! export 2321 [provided] [no usage info] [missing usage info prevents renaming] */
  18330. /*! export 2322 [provided] [no usage info] [missing usage info prevents renaming] */
  18331. /*! export 2323 [provided] [no usage info] [missing usage info prevents renaming] */
  18332. /*! export 2324 [provided] [no usage info] [missing usage info prevents renaming] */
  18333. /*! export 2325 [provided] [no usage info] [missing usage info prevents renaming] */
  18334. /*! export 2326 [provided] [no usage info] [missing usage info prevents renaming] */
  18335. /*! export 2327 [provided] [no usage info] [missing usage info prevents renaming] */
  18336. /*! export 2328 [provided] [no usage info] [missing usage info prevents renaming] */
  18337. /*! export 2329 [provided] [no usage info] [missing usage info prevents renaming] */
  18338. /*! export 233 [provided] [no usage info] [missing usage info prevents renaming] */
  18339. /*! export 2330 [provided] [no usage info] [missing usage info prevents renaming] */
  18340. /*! export 2331 [provided] [no usage info] [missing usage info prevents renaming] */
  18341. /*! export 2332 [provided] [no usage info] [missing usage info prevents renaming] */
  18342. /*! export 2333 [provided] [no usage info] [missing usage info prevents renaming] */
  18343. /*! export 2334 [provided] [no usage info] [missing usage info prevents renaming] */
  18344. /*! export 2335 [provided] [no usage info] [missing usage info prevents renaming] */
  18345. /*! export 2336 [provided] [no usage info] [missing usage info prevents renaming] */
  18346. /*! export 2337 [provided] [no usage info] [missing usage info prevents renaming] */
  18347. /*! export 2338 [provided] [no usage info] [missing usage info prevents renaming] */
  18348. /*! export 2339 [provided] [no usage info] [missing usage info prevents renaming] */
  18349. /*! export 234 [provided] [no usage info] [missing usage info prevents renaming] */
  18350. /*! export 2340 [provided] [no usage info] [missing usage info prevents renaming] */
  18351. /*! export 2341 [provided] [no usage info] [missing usage info prevents renaming] */
  18352. /*! export 2342 [provided] [no usage info] [missing usage info prevents renaming] */
  18353. /*! export 2343 [provided] [no usage info] [missing usage info prevents renaming] */
  18354. /*! export 2344 [provided] [no usage info] [missing usage info prevents renaming] */
  18355. /*! export 2345 [provided] [no usage info] [missing usage info prevents renaming] */
  18356. /*! export 2346 [provided] [no usage info] [missing usage info prevents renaming] */
  18357. /*! export 2347 [provided] [no usage info] [missing usage info prevents renaming] */
  18358. /*! export 2348 [provided] [no usage info] [missing usage info prevents renaming] */
  18359. /*! export 2349 [provided] [no usage info] [missing usage info prevents renaming] */
  18360. /*! export 235 [provided] [no usage info] [missing usage info prevents renaming] */
  18361. /*! export 2350 [provided] [no usage info] [missing usage info prevents renaming] */
  18362. /*! export 2351 [provided] [no usage info] [missing usage info prevents renaming] */
  18363. /*! export 2352 [provided] [no usage info] [missing usage info prevents renaming] */
  18364. /*! export 2353 [provided] [no usage info] [missing usage info prevents renaming] */
  18365. /*! export 2354 [provided] [no usage info] [missing usage info prevents renaming] */
  18366. /*! export 2355 [provided] [no usage info] [missing usage info prevents renaming] */
  18367. /*! export 2356 [provided] [no usage info] [missing usage info prevents renaming] */
  18368. /*! export 2357 [provided] [no usage info] [missing usage info prevents renaming] */
  18369. /*! export 2358 [provided] [no usage info] [missing usage info prevents renaming] */
  18370. /*! export 2359 [provided] [no usage info] [missing usage info prevents renaming] */
  18371. /*! export 236 [provided] [no usage info] [missing usage info prevents renaming] */
  18372. /*! export 2360 [provided] [no usage info] [missing usage info prevents renaming] */
  18373. /*! export 2361 [provided] [no usage info] [missing usage info prevents renaming] */
  18374. /*! export 2362 [provided] [no usage info] [missing usage info prevents renaming] */
  18375. /*! export 2363 [provided] [no usage info] [missing usage info prevents renaming] */
  18376. /*! export 2364 [provided] [no usage info] [missing usage info prevents renaming] */
  18377. /*! export 2365 [provided] [no usage info] [missing usage info prevents renaming] */
  18378. /*! export 2366 [provided] [no usage info] [missing usage info prevents renaming] */
  18379. /*! export 2367 [provided] [no usage info] [missing usage info prevents renaming] */
  18380. /*! export 2368 [provided] [no usage info] [missing usage info prevents renaming] */
  18381. /*! export 2369 [provided] [no usage info] [missing usage info prevents renaming] */
  18382. /*! export 237 [provided] [no usage info] [missing usage info prevents renaming] */
  18383. /*! export 2370 [provided] [no usage info] [missing usage info prevents renaming] */
  18384. /*! export 2371 [provided] [no usage info] [missing usage info prevents renaming] */
  18385. /*! export 2372 [provided] [no usage info] [missing usage info prevents renaming] */
  18386. /*! export 2373 [provided] [no usage info] [missing usage info prevents renaming] */
  18387. /*! export 2374 [provided] [no usage info] [missing usage info prevents renaming] */
  18388. /*! export 2375 [provided] [no usage info] [missing usage info prevents renaming] */
  18389. /*! export 2376 [provided] [no usage info] [missing usage info prevents renaming] */
  18390. /*! export 2377 [provided] [no usage info] [missing usage info prevents renaming] */
  18391. /*! export 2378 [provided] [no usage info] [missing usage info prevents renaming] */
  18392. /*! export 2379 [provided] [no usage info] [missing usage info prevents renaming] */
  18393. /*! export 238 [provided] [no usage info] [missing usage info prevents renaming] */
  18394. /*! export 2380 [provided] [no usage info] [missing usage info prevents renaming] */
  18395. /*! export 2381 [provided] [no usage info] [missing usage info prevents renaming] */
  18396. /*! export 2382 [provided] [no usage info] [missing usage info prevents renaming] */
  18397. /*! export 2383 [provided] [no usage info] [missing usage info prevents renaming] */
  18398. /*! export 2384 [provided] [no usage info] [missing usage info prevents renaming] */
  18399. /*! export 2385 [provided] [no usage info] [missing usage info prevents renaming] */
  18400. /*! export 2386 [provided] [no usage info] [missing usage info prevents renaming] */
  18401. /*! export 2387 [provided] [no usage info] [missing usage info prevents renaming] */
  18402. /*! export 2388 [provided] [no usage info] [missing usage info prevents renaming] */
  18403. /*! export 2389 [provided] [no usage info] [missing usage info prevents renaming] */
  18404. /*! export 239 [provided] [no usage info] [missing usage info prevents renaming] */
  18405. /*! export 2390 [provided] [no usage info] [missing usage info prevents renaming] */
  18406. /*! export 2391 [provided] [no usage info] [missing usage info prevents renaming] */
  18407. /*! export 2392 [provided] [no usage info] [missing usage info prevents renaming] */
  18408. /*! export 2393 [provided] [no usage info] [missing usage info prevents renaming] */
  18409. /*! export 2394 [provided] [no usage info] [missing usage info prevents renaming] */
  18410. /*! export 2395 [provided] [no usage info] [missing usage info prevents renaming] */
  18411. /*! export 2396 [provided] [no usage info] [missing usage info prevents renaming] */
  18412. /*! export 2397 [provided] [no usage info] [missing usage info prevents renaming] */
  18413. /*! export 2398 [provided] [no usage info] [missing usage info prevents renaming] */
  18414. /*! export 2399 [provided] [no usage info] [missing usage info prevents renaming] */
  18415. /*! export 24 [provided] [no usage info] [missing usage info prevents renaming] */
  18416. /*! export 240 [provided] [no usage info] [missing usage info prevents renaming] */
  18417. /*! export 2400 [provided] [no usage info] [missing usage info prevents renaming] */
  18418. /*! export 2401 [provided] [no usage info] [missing usage info prevents renaming] */
  18419. /*! export 2402 [provided] [no usage info] [missing usage info prevents renaming] */
  18420. /*! export 2403 [provided] [no usage info] [missing usage info prevents renaming] */
  18421. /*! export 2404 [provided] [no usage info] [missing usage info prevents renaming] */
  18422. /*! export 2405 [provided] [no usage info] [missing usage info prevents renaming] */
  18423. /*! export 2406 [provided] [no usage info] [missing usage info prevents renaming] */
  18424. /*! export 2407 [provided] [no usage info] [missing usage info prevents renaming] */
  18425. /*! export 2408 [provided] [no usage info] [missing usage info prevents renaming] */
  18426. /*! export 2409 [provided] [no usage info] [missing usage info prevents renaming] */
  18427. /*! export 241 [provided] [no usage info] [missing usage info prevents renaming] */
  18428. /*! export 2410 [provided] [no usage info] [missing usage info prevents renaming] */
  18429. /*! export 2411 [provided] [no usage info] [missing usage info prevents renaming] */
  18430. /*! export 2412 [provided] [no usage info] [missing usage info prevents renaming] */
  18431. /*! export 2413 [provided] [no usage info] [missing usage info prevents renaming] */
  18432. /*! export 2414 [provided] [no usage info] [missing usage info prevents renaming] */
  18433. /*! export 2415 [provided] [no usage info] [missing usage info prevents renaming] */
  18434. /*! export 2416 [provided] [no usage info] [missing usage info prevents renaming] */
  18435. /*! export 2417 [provided] [no usage info] [missing usage info prevents renaming] */
  18436. /*! export 2418 [provided] [no usage info] [missing usage info prevents renaming] */
  18437. /*! export 2419 [provided] [no usage info] [missing usage info prevents renaming] */
  18438. /*! export 242 [provided] [no usage info] [missing usage info prevents renaming] */
  18439. /*! export 2420 [provided] [no usage info] [missing usage info prevents renaming] */
  18440. /*! export 2421 [provided] [no usage info] [missing usage info prevents renaming] */
  18441. /*! export 2422 [provided] [no usage info] [missing usage info prevents renaming] */
  18442. /*! export 2423 [provided] [no usage info] [missing usage info prevents renaming] */
  18443. /*! export 2424 [provided] [no usage info] [missing usage info prevents renaming] */
  18444. /*! export 2425 [provided] [no usage info] [missing usage info prevents renaming] */
  18445. /*! export 2426 [provided] [no usage info] [missing usage info prevents renaming] */
  18446. /*! export 2427 [provided] [no usage info] [missing usage info prevents renaming] */
  18447. /*! export 2428 [provided] [no usage info] [missing usage info prevents renaming] */
  18448. /*! export 2429 [provided] [no usage info] [missing usage info prevents renaming] */
  18449. /*! export 243 [provided] [no usage info] [missing usage info prevents renaming] */
  18450. /*! export 2430 [provided] [no usage info] [missing usage info prevents renaming] */
  18451. /*! export 2431 [provided] [no usage info] [missing usage info prevents renaming] */
  18452. /*! export 2432 [provided] [no usage info] [missing usage info prevents renaming] */
  18453. /*! export 2433 [provided] [no usage info] [missing usage info prevents renaming] */
  18454. /*! export 2434 [provided] [no usage info] [missing usage info prevents renaming] */
  18455. /*! export 2435 [provided] [no usage info] [missing usage info prevents renaming] */
  18456. /*! export 2436 [provided] [no usage info] [missing usage info prevents renaming] */
  18457. /*! export 2437 [provided] [no usage info] [missing usage info prevents renaming] */
  18458. /*! export 2438 [provided] [no usage info] [missing usage info prevents renaming] */
  18459. /*! export 2439 [provided] [no usage info] [missing usage info prevents renaming] */
  18460. /*! export 244 [provided] [no usage info] [missing usage info prevents renaming] */
  18461. /*! export 2440 [provided] [no usage info] [missing usage info prevents renaming] */
  18462. /*! export 2441 [provided] [no usage info] [missing usage info prevents renaming] */
  18463. /*! export 2442 [provided] [no usage info] [missing usage info prevents renaming] */
  18464. /*! export 2443 [provided] [no usage info] [missing usage info prevents renaming] */
  18465. /*! export 2444 [provided] [no usage info] [missing usage info prevents renaming] */
  18466. /*! export 2445 [provided] [no usage info] [missing usage info prevents renaming] */
  18467. /*! export 2446 [provided] [no usage info] [missing usage info prevents renaming] */
  18468. /*! export 2447 [provided] [no usage info] [missing usage info prevents renaming] */
  18469. /*! export 2448 [provided] [no usage info] [missing usage info prevents renaming] */
  18470. /*! export 2449 [provided] [no usage info] [missing usage info prevents renaming] */
  18471. /*! export 245 [provided] [no usage info] [missing usage info prevents renaming] */
  18472. /*! export 2450 [provided] [no usage info] [missing usage info prevents renaming] */
  18473. /*! export 2451 [provided] [no usage info] [missing usage info prevents renaming] */
  18474. /*! export 2452 [provided] [no usage info] [missing usage info prevents renaming] */
  18475. /*! export 2453 [provided] [no usage info] [missing usage info prevents renaming] */
  18476. /*! export 2454 [provided] [no usage info] [missing usage info prevents renaming] */
  18477. /*! export 2455 [provided] [no usage info] [missing usage info prevents renaming] */
  18478. /*! export 2456 [provided] [no usage info] [missing usage info prevents renaming] */
  18479. /*! export 2457 [provided] [no usage info] [missing usage info prevents renaming] */
  18480. /*! export 2458 [provided] [no usage info] [missing usage info prevents renaming] */
  18481. /*! export 2459 [provided] [no usage info] [missing usage info prevents renaming] */
  18482. /*! export 246 [provided] [no usage info] [missing usage info prevents renaming] */
  18483. /*! export 2460 [provided] [no usage info] [missing usage info prevents renaming] */
  18484. /*! export 2461 [provided] [no usage info] [missing usage info prevents renaming] */
  18485. /*! export 2462 [provided] [no usage info] [missing usage info prevents renaming] */
  18486. /*! export 2463 [provided] [no usage info] [missing usage info prevents renaming] */
  18487. /*! export 2464 [provided] [no usage info] [missing usage info prevents renaming] */
  18488. /*! export 2465 [provided] [no usage info] [missing usage info prevents renaming] */
  18489. /*! export 2466 [provided] [no usage info] [missing usage info prevents renaming] */
  18490. /*! export 2467 [provided] [no usage info] [missing usage info prevents renaming] */
  18491. /*! export 2468 [provided] [no usage info] [missing usage info prevents renaming] */
  18492. /*! export 2469 [provided] [no usage info] [missing usage info prevents renaming] */
  18493. /*! export 247 [provided] [no usage info] [missing usage info prevents renaming] */
  18494. /*! export 2470 [provided] [no usage info] [missing usage info prevents renaming] */
  18495. /*! export 2471 [provided] [no usage info] [missing usage info prevents renaming] */
  18496. /*! export 2472 [provided] [no usage info] [missing usage info prevents renaming] */
  18497. /*! export 2473 [provided] [no usage info] [missing usage info prevents renaming] */
  18498. /*! export 2474 [provided] [no usage info] [missing usage info prevents renaming] */
  18499. /*! export 2475 [provided] [no usage info] [missing usage info prevents renaming] */
  18500. /*! export 2476 [provided] [no usage info] [missing usage info prevents renaming] */
  18501. /*! export 2477 [provided] [no usage info] [missing usage info prevents renaming] */
  18502. /*! export 2478 [provided] [no usage info] [missing usage info prevents renaming] */
  18503. /*! export 2479 [provided] [no usage info] [missing usage info prevents renaming] */
  18504. /*! export 248 [provided] [no usage info] [missing usage info prevents renaming] */
  18505. /*! export 2480 [provided] [no usage info] [missing usage info prevents renaming] */
  18506. /*! export 2481 [provided] [no usage info] [missing usage info prevents renaming] */
  18507. /*! export 2482 [provided] [no usage info] [missing usage info prevents renaming] */
  18508. /*! export 2483 [provided] [no usage info] [missing usage info prevents renaming] */
  18509. /*! export 2484 [provided] [no usage info] [missing usage info prevents renaming] */
  18510. /*! export 2485 [provided] [no usage info] [missing usage info prevents renaming] */
  18511. /*! export 2486 [provided] [no usage info] [missing usage info prevents renaming] */
  18512. /*! export 2487 [provided] [no usage info] [missing usage info prevents renaming] */
  18513. /*! export 2488 [provided] [no usage info] [missing usage info prevents renaming] */
  18514. /*! export 2489 [provided] [no usage info] [missing usage info prevents renaming] */
  18515. /*! export 249 [provided] [no usage info] [missing usage info prevents renaming] */
  18516. /*! export 2490 [provided] [no usage info] [missing usage info prevents renaming] */
  18517. /*! export 2491 [provided] [no usage info] [missing usage info prevents renaming] */
  18518. /*! export 2492 [provided] [no usage info] [missing usage info prevents renaming] */
  18519. /*! export 2493 [provided] [no usage info] [missing usage info prevents renaming] */
  18520. /*! export 2494 [provided] [no usage info] [missing usage info prevents renaming] */
  18521. /*! export 2495 [provided] [no usage info] [missing usage info prevents renaming] */
  18522. /*! export 2496 [provided] [no usage info] [missing usage info prevents renaming] */
  18523. /*! export 2497 [provided] [no usage info] [missing usage info prevents renaming] */
  18524. /*! export 2498 [provided] [no usage info] [missing usage info prevents renaming] */
  18525. /*! export 2499 [provided] [no usage info] [missing usage info prevents renaming] */
  18526. /*! export 25 [provided] [no usage info] [missing usage info prevents renaming] */
  18527. /*! export 250 [provided] [no usage info] [missing usage info prevents renaming] */
  18528. /*! export 2500 [provided] [no usage info] [missing usage info prevents renaming] */
  18529. /*! export 2501 [provided] [no usage info] [missing usage info prevents renaming] */
  18530. /*! export 2502 [provided] [no usage info] [missing usage info prevents renaming] */
  18531. /*! export 2503 [provided] [no usage info] [missing usage info prevents renaming] */
  18532. /*! export 2504 [provided] [no usage info] [missing usage info prevents renaming] */
  18533. /*! export 2505 [provided] [no usage info] [missing usage info prevents renaming] */
  18534. /*! export 2506 [provided] [no usage info] [missing usage info prevents renaming] */
  18535. /*! export 2507 [provided] [no usage info] [missing usage info prevents renaming] */
  18536. /*! export 2508 [provided] [no usage info] [missing usage info prevents renaming] */
  18537. /*! export 2509 [provided] [no usage info] [missing usage info prevents renaming] */
  18538. /*! export 251 [provided] [no usage info] [missing usage info prevents renaming] */
  18539. /*! export 2510 [provided] [no usage info] [missing usage info prevents renaming] */
  18540. /*! export 2511 [provided] [no usage info] [missing usage info prevents renaming] */
  18541. /*! export 2512 [provided] [no usage info] [missing usage info prevents renaming] */
  18542. /*! export 2513 [provided] [no usage info] [missing usage info prevents renaming] */
  18543. /*! export 2514 [provided] [no usage info] [missing usage info prevents renaming] */
  18544. /*! export 2515 [provided] [no usage info] [missing usage info prevents renaming] */
  18545. /*! export 2516 [provided] [no usage info] [missing usage info prevents renaming] */
  18546. /*! export 2517 [provided] [no usage info] [missing usage info prevents renaming] */
  18547. /*! export 2518 [provided] [no usage info] [missing usage info prevents renaming] */
  18548. /*! export 2519 [provided] [no usage info] [missing usage info prevents renaming] */
  18549. /*! export 252 [provided] [no usage info] [missing usage info prevents renaming] */
  18550. /*! export 2520 [provided] [no usage info] [missing usage info prevents renaming] */
  18551. /*! export 2521 [provided] [no usage info] [missing usage info prevents renaming] */
  18552. /*! export 2522 [provided] [no usage info] [missing usage info prevents renaming] */
  18553. /*! export 2523 [provided] [no usage info] [missing usage info prevents renaming] */
  18554. /*! export 2524 [provided] [no usage info] [missing usage info prevents renaming] */
  18555. /*! export 2525 [provided] [no usage info] [missing usage info prevents renaming] */
  18556. /*! export 2526 [provided] [no usage info] [missing usage info prevents renaming] */
  18557. /*! export 2527 [provided] [no usage info] [missing usage info prevents renaming] */
  18558. /*! export 2528 [provided] [no usage info] [missing usage info prevents renaming] */
  18559. /*! export 2529 [provided] [no usage info] [missing usage info prevents renaming] */
  18560. /*! export 253 [provided] [no usage info] [missing usage info prevents renaming] */
  18561. /*! export 2530 [provided] [no usage info] [missing usage info prevents renaming] */
  18562. /*! export 2531 [provided] [no usage info] [missing usage info prevents renaming] */
  18563. /*! export 2532 [provided] [no usage info] [missing usage info prevents renaming] */
  18564. /*! export 2533 [provided] [no usage info] [missing usage info prevents renaming] */
  18565. /*! export 2534 [provided] [no usage info] [missing usage info prevents renaming] */
  18566. /*! export 2535 [provided] [no usage info] [missing usage info prevents renaming] */
  18567. /*! export 2536 [provided] [no usage info] [missing usage info prevents renaming] */
  18568. /*! export 2537 [provided] [no usage info] [missing usage info prevents renaming] */
  18569. /*! export 2538 [provided] [no usage info] [missing usage info prevents renaming] */
  18570. /*! export 2539 [provided] [no usage info] [missing usage info prevents renaming] */
  18571. /*! export 254 [provided] [no usage info] [missing usage info prevents renaming] */
  18572. /*! export 2540 [provided] [no usage info] [missing usage info prevents renaming] */
  18573. /*! export 2541 [provided] [no usage info] [missing usage info prevents renaming] */
  18574. /*! export 2542 [provided] [no usage info] [missing usage info prevents renaming] */
  18575. /*! export 2543 [provided] [no usage info] [missing usage info prevents renaming] */
  18576. /*! export 2544 [provided] [no usage info] [missing usage info prevents renaming] */
  18577. /*! export 2545 [provided] [no usage info] [missing usage info prevents renaming] */
  18578. /*! export 2546 [provided] [no usage info] [missing usage info prevents renaming] */
  18579. /*! export 2547 [provided] [no usage info] [missing usage info prevents renaming] */
  18580. /*! export 2548 [provided] [no usage info] [missing usage info prevents renaming] */
  18581. /*! export 2549 [provided] [no usage info] [missing usage info prevents renaming] */
  18582. /*! export 255 [provided] [no usage info] [missing usage info prevents renaming] */
  18583. /*! export 2550 [provided] [no usage info] [missing usage info prevents renaming] */
  18584. /*! export 2551 [provided] [no usage info] [missing usage info prevents renaming] */
  18585. /*! export 2552 [provided] [no usage info] [missing usage info prevents renaming] */
  18586. /*! export 2553 [provided] [no usage info] [missing usage info prevents renaming] */
  18587. /*! export 2554 [provided] [no usage info] [missing usage info prevents renaming] */
  18588. /*! export 2555 [provided] [no usage info] [missing usage info prevents renaming] */
  18589. /*! export 2556 [provided] [no usage info] [missing usage info prevents renaming] */
  18590. /*! export 2557 [provided] [no usage info] [missing usage info prevents renaming] */
  18591. /*! export 2558 [provided] [no usage info] [missing usage info prevents renaming] */
  18592. /*! export 2559 [provided] [no usage info] [missing usage info prevents renaming] */
  18593. /*! export 256 [provided] [no usage info] [missing usage info prevents renaming] */
  18594. /*! export 2560 [provided] [no usage info] [missing usage info prevents renaming] */
  18595. /*! export 2561 [provided] [no usage info] [missing usage info prevents renaming] */
  18596. /*! export 2562 [provided] [no usage info] [missing usage info prevents renaming] */
  18597. /*! export 2563 [provided] [no usage info] [missing usage info prevents renaming] */
  18598. /*! export 2564 [provided] [no usage info] [missing usage info prevents renaming] */
  18599. /*! export 2565 [provided] [no usage info] [missing usage info prevents renaming] */
  18600. /*! export 2566 [provided] [no usage info] [missing usage info prevents renaming] */
  18601. /*! export 2567 [provided] [no usage info] [missing usage info prevents renaming] */
  18602. /*! export 2568 [provided] [no usage info] [missing usage info prevents renaming] */
  18603. /*! export 2569 [provided] [no usage info] [missing usage info prevents renaming] */
  18604. /*! export 257 [provided] [no usage info] [missing usage info prevents renaming] */
  18605. /*! export 2570 [provided] [no usage info] [missing usage info prevents renaming] */
  18606. /*! export 2571 [provided] [no usage info] [missing usage info prevents renaming] */
  18607. /*! export 2572 [provided] [no usage info] [missing usage info prevents renaming] */
  18608. /*! export 2573 [provided] [no usage info] [missing usage info prevents renaming] */
  18609. /*! export 2574 [provided] [no usage info] [missing usage info prevents renaming] */
  18610. /*! export 2575 [provided] [no usage info] [missing usage info prevents renaming] */
  18611. /*! export 2576 [provided] [no usage info] [missing usage info prevents renaming] */
  18612. /*! export 2577 [provided] [no usage info] [missing usage info prevents renaming] */
  18613. /*! export 2578 [provided] [no usage info] [missing usage info prevents renaming] */
  18614. /*! export 2579 [provided] [no usage info] [missing usage info prevents renaming] */
  18615. /*! export 258 [provided] [no usage info] [missing usage info prevents renaming] */
  18616. /*! export 2580 [provided] [no usage info] [missing usage info prevents renaming] */
  18617. /*! export 2581 [provided] [no usage info] [missing usage info prevents renaming] */
  18618. /*! export 2582 [provided] [no usage info] [missing usage info prevents renaming] */
  18619. /*! export 2583 [provided] [no usage info] [missing usage info prevents renaming] */
  18620. /*! export 2584 [provided] [no usage info] [missing usage info prevents renaming] */
  18621. /*! export 2585 [provided] [no usage info] [missing usage info prevents renaming] */
  18622. /*! export 2586 [provided] [no usage info] [missing usage info prevents renaming] */
  18623. /*! export 2587 [provided] [no usage info] [missing usage info prevents renaming] */
  18624. /*! export 2588 [provided] [no usage info] [missing usage info prevents renaming] */
  18625. /*! export 2589 [provided] [no usage info] [missing usage info prevents renaming] */
  18626. /*! export 259 [provided] [no usage info] [missing usage info prevents renaming] */
  18627. /*! export 2590 [provided] [no usage info] [missing usage info prevents renaming] */
  18628. /*! export 2591 [provided] [no usage info] [missing usage info prevents renaming] */
  18629. /*! export 2592 [provided] [no usage info] [missing usage info prevents renaming] */
  18630. /*! export 2593 [provided] [no usage info] [missing usage info prevents renaming] */
  18631. /*! export 2594 [provided] [no usage info] [missing usage info prevents renaming] */
  18632. /*! export 2595 [provided] [no usage info] [missing usage info prevents renaming] */
  18633. /*! export 2596 [provided] [no usage info] [missing usage info prevents renaming] */
  18634. /*! export 2597 [provided] [no usage info] [missing usage info prevents renaming] */
  18635. /*! export 2598 [provided] [no usage info] [missing usage info prevents renaming] */
  18636. /*! export 2599 [provided] [no usage info] [missing usage info prevents renaming] */
  18637. /*! export 26 [provided] [no usage info] [missing usage info prevents renaming] */
  18638. /*! export 260 [provided] [no usage info] [missing usage info prevents renaming] */
  18639. /*! export 2600 [provided] [no usage info] [missing usage info prevents renaming] */
  18640. /*! export 2601 [provided] [no usage info] [missing usage info prevents renaming] */
  18641. /*! export 2602 [provided] [no usage info] [missing usage info prevents renaming] */
  18642. /*! export 2603 [provided] [no usage info] [missing usage info prevents renaming] */
  18643. /*! export 2604 [provided] [no usage info] [missing usage info prevents renaming] */
  18644. /*! export 2605 [provided] [no usage info] [missing usage info prevents renaming] */
  18645. /*! export 2606 [provided] [no usage info] [missing usage info prevents renaming] */
  18646. /*! export 2607 [provided] [no usage info] [missing usage info prevents renaming] */
  18647. /*! export 2608 [provided] [no usage info] [missing usage info prevents renaming] */
  18648. /*! export 2609 [provided] [no usage info] [missing usage info prevents renaming] */
  18649. /*! export 261 [provided] [no usage info] [missing usage info prevents renaming] */
  18650. /*! export 2610 [provided] [no usage info] [missing usage info prevents renaming] */
  18651. /*! export 2611 [provided] [no usage info] [missing usage info prevents renaming] */
  18652. /*! export 2612 [provided] [no usage info] [missing usage info prevents renaming] */
  18653. /*! export 2613 [provided] [no usage info] [missing usage info prevents renaming] */
  18654. /*! export 2614 [provided] [no usage info] [missing usage info prevents renaming] */
  18655. /*! export 2615 [provided] [no usage info] [missing usage info prevents renaming] */
  18656. /*! export 2616 [provided] [no usage info] [missing usage info prevents renaming] */
  18657. /*! export 2617 [provided] [no usage info] [missing usage info prevents renaming] */
  18658. /*! export 2618 [provided] [no usage info] [missing usage info prevents renaming] */
  18659. /*! export 2619 [provided] [no usage info] [missing usage info prevents renaming] */
  18660. /*! export 262 [provided] [no usage info] [missing usage info prevents renaming] */
  18661. /*! export 2620 [provided] [no usage info] [missing usage info prevents renaming] */
  18662. /*! export 2621 [provided] [no usage info] [missing usage info prevents renaming] */
  18663. /*! export 2622 [provided] [no usage info] [missing usage info prevents renaming] */
  18664. /*! export 2623 [provided] [no usage info] [missing usage info prevents renaming] */
  18665. /*! export 2624 [provided] [no usage info] [missing usage info prevents renaming] */
  18666. /*! export 2625 [provided] [no usage info] [missing usage info prevents renaming] */
  18667. /*! export 2626 [provided] [no usage info] [missing usage info prevents renaming] */
  18668. /*! export 2627 [provided] [no usage info] [missing usage info prevents renaming] */
  18669. /*! export 2628 [provided] [no usage info] [missing usage info prevents renaming] */
  18670. /*! export 2629 [provided] [no usage info] [missing usage info prevents renaming] */
  18671. /*! export 263 [provided] [no usage info] [missing usage info prevents renaming] */
  18672. /*! export 2630 [provided] [no usage info] [missing usage info prevents renaming] */
  18673. /*! export 2631 [provided] [no usage info] [missing usage info prevents renaming] */
  18674. /*! export 2632 [provided] [no usage info] [missing usage info prevents renaming] */
  18675. /*! export 2633 [provided] [no usage info] [missing usage info prevents renaming] */
  18676. /*! export 2634 [provided] [no usage info] [missing usage info prevents renaming] */
  18677. /*! export 2635 [provided] [no usage info] [missing usage info prevents renaming] */
  18678. /*! export 2636 [provided] [no usage info] [missing usage info prevents renaming] */
  18679. /*! export 2637 [provided] [no usage info] [missing usage info prevents renaming] */
  18680. /*! export 2638 [provided] [no usage info] [missing usage info prevents renaming] */
  18681. /*! export 2639 [provided] [no usage info] [missing usage info prevents renaming] */
  18682. /*! export 264 [provided] [no usage info] [missing usage info prevents renaming] */
  18683. /*! export 2640 [provided] [no usage info] [missing usage info prevents renaming] */
  18684. /*! export 2641 [provided] [no usage info] [missing usage info prevents renaming] */
  18685. /*! export 2642 [provided] [no usage info] [missing usage info prevents renaming] */
  18686. /*! export 2643 [provided] [no usage info] [missing usage info prevents renaming] */
  18687. /*! export 2644 [provided] [no usage info] [missing usage info prevents renaming] */
  18688. /*! export 2645 [provided] [no usage info] [missing usage info prevents renaming] */
  18689. /*! export 2646 [provided] [no usage info] [missing usage info prevents renaming] */
  18690. /*! export 2647 [provided] [no usage info] [missing usage info prevents renaming] */
  18691. /*! export 2648 [provided] [no usage info] [missing usage info prevents renaming] */
  18692. /*! export 2649 [provided] [no usage info] [missing usage info prevents renaming] */
  18693. /*! export 265 [provided] [no usage info] [missing usage info prevents renaming] */
  18694. /*! export 2650 [provided] [no usage info] [missing usage info prevents renaming] */
  18695. /*! export 2651 [provided] [no usage info] [missing usage info prevents renaming] */
  18696. /*! export 2652 [provided] [no usage info] [missing usage info prevents renaming] */
  18697. /*! export 2653 [provided] [no usage info] [missing usage info prevents renaming] */
  18698. /*! export 2654 [provided] [no usage info] [missing usage info prevents renaming] */
  18699. /*! export 2655 [provided] [no usage info] [missing usage info prevents renaming] */
  18700. /*! export 2656 [provided] [no usage info] [missing usage info prevents renaming] */
  18701. /*! export 2657 [provided] [no usage info] [missing usage info prevents renaming] */
  18702. /*! export 2658 [provided] [no usage info] [missing usage info prevents renaming] */
  18703. /*! export 2659 [provided] [no usage info] [missing usage info prevents renaming] */
  18704. /*! export 266 [provided] [no usage info] [missing usage info prevents renaming] */
  18705. /*! export 2660 [provided] [no usage info] [missing usage info prevents renaming] */
  18706. /*! export 2661 [provided] [no usage info] [missing usage info prevents renaming] */
  18707. /*! export 2662 [provided] [no usage info] [missing usage info prevents renaming] */
  18708. /*! export 2663 [provided] [no usage info] [missing usage info prevents renaming] */
  18709. /*! export 2664 [provided] [no usage info] [missing usage info prevents renaming] */
  18710. /*! export 2665 [provided] [no usage info] [missing usage info prevents renaming] */
  18711. /*! export 2666 [provided] [no usage info] [missing usage info prevents renaming] */
  18712. /*! export 2667 [provided] [no usage info] [missing usage info prevents renaming] */
  18713. /*! export 2668 [provided] [no usage info] [missing usage info prevents renaming] */
  18714. /*! export 2669 [provided] [no usage info] [missing usage info prevents renaming] */
  18715. /*! export 267 [provided] [no usage info] [missing usage info prevents renaming] */
  18716. /*! export 2670 [provided] [no usage info] [missing usage info prevents renaming] */
  18717. /*! export 2671 [provided] [no usage info] [missing usage info prevents renaming] */
  18718. /*! export 2672 [provided] [no usage info] [missing usage info prevents renaming] */
  18719. /*! export 2673 [provided] [no usage info] [missing usage info prevents renaming] */
  18720. /*! export 2674 [provided] [no usage info] [missing usage info prevents renaming] */
  18721. /*! export 2675 [provided] [no usage info] [missing usage info prevents renaming] */
  18722. /*! export 2676 [provided] [no usage info] [missing usage info prevents renaming] */
  18723. /*! export 2677 [provided] [no usage info] [missing usage info prevents renaming] */
  18724. /*! export 2678 [provided] [no usage info] [missing usage info prevents renaming] */
  18725. /*! export 2679 [provided] [no usage info] [missing usage info prevents renaming] */
  18726. /*! export 268 [provided] [no usage info] [missing usage info prevents renaming] */
  18727. /*! export 2680 [provided] [no usage info] [missing usage info prevents renaming] */
  18728. /*! export 2681 [provided] [no usage info] [missing usage info prevents renaming] */
  18729. /*! export 2682 [provided] [no usage info] [missing usage info prevents renaming] */
  18730. /*! export 2683 [provided] [no usage info] [missing usage info prevents renaming] */
  18731. /*! export 2684 [provided] [no usage info] [missing usage info prevents renaming] */
  18732. /*! export 2685 [provided] [no usage info] [missing usage info prevents renaming] */
  18733. /*! export 2686 [provided] [no usage info] [missing usage info prevents renaming] */
  18734. /*! export 2687 [provided] [no usage info] [missing usage info prevents renaming] */
  18735. /*! export 2688 [provided] [no usage info] [missing usage info prevents renaming] */
  18736. /*! export 2689 [provided] [no usage info] [missing usage info prevents renaming] */
  18737. /*! export 269 [provided] [no usage info] [missing usage info prevents renaming] */
  18738. /*! export 2690 [provided] [no usage info] [missing usage info prevents renaming] */
  18739. /*! export 2691 [provided] [no usage info] [missing usage info prevents renaming] */
  18740. /*! export 2692 [provided] [no usage info] [missing usage info prevents renaming] */
  18741. /*! export 2693 [provided] [no usage info] [missing usage info prevents renaming] */
  18742. /*! export 2694 [provided] [no usage info] [missing usage info prevents renaming] */
  18743. /*! export 2695 [provided] [no usage info] [missing usage info prevents renaming] */
  18744. /*! export 2696 [provided] [no usage info] [missing usage info prevents renaming] */
  18745. /*! export 2697 [provided] [no usage info] [missing usage info prevents renaming] */
  18746. /*! export 2698 [provided] [no usage info] [missing usage info prevents renaming] */
  18747. /*! export 2699 [provided] [no usage info] [missing usage info prevents renaming] */
  18748. /*! export 27 [provided] [no usage info] [missing usage info prevents renaming] */
  18749. /*! export 270 [provided] [no usage info] [missing usage info prevents renaming] */
  18750. /*! export 2700 [provided] [no usage info] [missing usage info prevents renaming] */
  18751. /*! export 2701 [provided] [no usage info] [missing usage info prevents renaming] */
  18752. /*! export 2702 [provided] [no usage info] [missing usage info prevents renaming] */
  18753. /*! export 2703 [provided] [no usage info] [missing usage info prevents renaming] */
  18754. /*! export 2704 [provided] [no usage info] [missing usage info prevents renaming] */
  18755. /*! export 2705 [provided] [no usage info] [missing usage info prevents renaming] */
  18756. /*! export 2706 [provided] [no usage info] [missing usage info prevents renaming] */
  18757. /*! export 2707 [provided] [no usage info] [missing usage info prevents renaming] */
  18758. /*! export 2708 [provided] [no usage info] [missing usage info prevents renaming] */
  18759. /*! export 2709 [provided] [no usage info] [missing usage info prevents renaming] */
  18760. /*! export 271 [provided] [no usage info] [missing usage info prevents renaming] */
  18761. /*! export 2710 [provided] [no usage info] [missing usage info prevents renaming] */
  18762. /*! export 2711 [provided] [no usage info] [missing usage info prevents renaming] */
  18763. /*! export 2712 [provided] [no usage info] [missing usage info prevents renaming] */
  18764. /*! export 2713 [provided] [no usage info] [missing usage info prevents renaming] */
  18765. /*! export 2714 [provided] [no usage info] [missing usage info prevents renaming] */
  18766. /*! export 2715 [provided] [no usage info] [missing usage info prevents renaming] */
  18767. /*! export 2716 [provided] [no usage info] [missing usage info prevents renaming] */
  18768. /*! export 2717 [provided] [no usage info] [missing usage info prevents renaming] */
  18769. /*! export 2718 [provided] [no usage info] [missing usage info prevents renaming] */
  18770. /*! export 2719 [provided] [no usage info] [missing usage info prevents renaming] */
  18771. /*! export 272 [provided] [no usage info] [missing usage info prevents renaming] */
  18772. /*! export 2720 [provided] [no usage info] [missing usage info prevents renaming] */
  18773. /*! export 2721 [provided] [no usage info] [missing usage info prevents renaming] */
  18774. /*! export 2722 [provided] [no usage info] [missing usage info prevents renaming] */
  18775. /*! export 2723 [provided] [no usage info] [missing usage info prevents renaming] */
  18776. /*! export 2724 [provided] [no usage info] [missing usage info prevents renaming] */
  18777. /*! export 2725 [provided] [no usage info] [missing usage info prevents renaming] */
  18778. /*! export 2726 [provided] [no usage info] [missing usage info prevents renaming] */
  18779. /*! export 2727 [provided] [no usage info] [missing usage info prevents renaming] */
  18780. /*! export 2728 [provided] [no usage info] [missing usage info prevents renaming] */
  18781. /*! export 2729 [provided] [no usage info] [missing usage info prevents renaming] */
  18782. /*! export 273 [provided] [no usage info] [missing usage info prevents renaming] */
  18783. /*! export 2730 [provided] [no usage info] [missing usage info prevents renaming] */
  18784. /*! export 2731 [provided] [no usage info] [missing usage info prevents renaming] */
  18785. /*! export 2732 [provided] [no usage info] [missing usage info prevents renaming] */
  18786. /*! export 2733 [provided] [no usage info] [missing usage info prevents renaming] */
  18787. /*! export 2734 [provided] [no usage info] [missing usage info prevents renaming] */
  18788. /*! export 2735 [provided] [no usage info] [missing usage info prevents renaming] */
  18789. /*! export 2736 [provided] [no usage info] [missing usage info prevents renaming] */
  18790. /*! export 2737 [provided] [no usage info] [missing usage info prevents renaming] */
  18791. /*! export 2738 [provided] [no usage info] [missing usage info prevents renaming] */
  18792. /*! export 2739 [provided] [no usage info] [missing usage info prevents renaming] */
  18793. /*! export 274 [provided] [no usage info] [missing usage info prevents renaming] */
  18794. /*! export 2740 [provided] [no usage info] [missing usage info prevents renaming] */
  18795. /*! export 2741 [provided] [no usage info] [missing usage info prevents renaming] */
  18796. /*! export 2742 [provided] [no usage info] [missing usage info prevents renaming] */
  18797. /*! export 2743 [provided] [no usage info] [missing usage info prevents renaming] */
  18798. /*! export 2744 [provided] [no usage info] [missing usage info prevents renaming] */
  18799. /*! export 2745 [provided] [no usage info] [missing usage info prevents renaming] */
  18800. /*! export 2746 [provided] [no usage info] [missing usage info prevents renaming] */
  18801. /*! export 2747 [provided] [no usage info] [missing usage info prevents renaming] */
  18802. /*! export 2748 [provided] [no usage info] [missing usage info prevents renaming] */
  18803. /*! export 2749 [provided] [no usage info] [missing usage info prevents renaming] */
  18804. /*! export 275 [provided] [no usage info] [missing usage info prevents renaming] */
  18805. /*! export 2750 [provided] [no usage info] [missing usage info prevents renaming] */
  18806. /*! export 2751 [provided] [no usage info] [missing usage info prevents renaming] */
  18807. /*! export 2752 [provided] [no usage info] [missing usage info prevents renaming] */
  18808. /*! export 2753 [provided] [no usage info] [missing usage info prevents renaming] */
  18809. /*! export 2754 [provided] [no usage info] [missing usage info prevents renaming] */
  18810. /*! export 2755 [provided] [no usage info] [missing usage info prevents renaming] */
  18811. /*! export 2756 [provided] [no usage info] [missing usage info prevents renaming] */
  18812. /*! export 2757 [provided] [no usage info] [missing usage info prevents renaming] */
  18813. /*! export 2758 [provided] [no usage info] [missing usage info prevents renaming] */
  18814. /*! export 2759 [provided] [no usage info] [missing usage info prevents renaming] */
  18815. /*! export 276 [provided] [no usage info] [missing usage info prevents renaming] */
  18816. /*! export 2760 [provided] [no usage info] [missing usage info prevents renaming] */
  18817. /*! export 2761 [provided] [no usage info] [missing usage info prevents renaming] */
  18818. /*! export 2762 [provided] [no usage info] [missing usage info prevents renaming] */
  18819. /*! export 2763 [provided] [no usage info] [missing usage info prevents renaming] */
  18820. /*! export 2764 [provided] [no usage info] [missing usage info prevents renaming] */
  18821. /*! export 2765 [provided] [no usage info] [missing usage info prevents renaming] */
  18822. /*! export 2766 [provided] [no usage info] [missing usage info prevents renaming] */
  18823. /*! export 2767 [provided] [no usage info] [missing usage info prevents renaming] */
  18824. /*! export 2768 [provided] [no usage info] [missing usage info prevents renaming] */
  18825. /*! export 2769 [provided] [no usage info] [missing usage info prevents renaming] */
  18826. /*! export 277 [provided] [no usage info] [missing usage info prevents renaming] */
  18827. /*! export 2770 [provided] [no usage info] [missing usage info prevents renaming] */
  18828. /*! export 2771 [provided] [no usage info] [missing usage info prevents renaming] */
  18829. /*! export 2772 [provided] [no usage info] [missing usage info prevents renaming] */
  18830. /*! export 2773 [provided] [no usage info] [missing usage info prevents renaming] */
  18831. /*! export 2774 [provided] [no usage info] [missing usage info prevents renaming] */
  18832. /*! export 2775 [provided] [no usage info] [missing usage info prevents renaming] */
  18833. /*! export 2776 [provided] [no usage info] [missing usage info prevents renaming] */
  18834. /*! export 2777 [provided] [no usage info] [missing usage info prevents renaming] */
  18835. /*! export 2778 [provided] [no usage info] [missing usage info prevents renaming] */
  18836. /*! export 2779 [provided] [no usage info] [missing usage info prevents renaming] */
  18837. /*! export 278 [provided] [no usage info] [missing usage info prevents renaming] */
  18838. /*! export 2780 [provided] [no usage info] [missing usage info prevents renaming] */
  18839. /*! export 2781 [provided] [no usage info] [missing usage info prevents renaming] */
  18840. /*! export 2782 [provided] [no usage info] [missing usage info prevents renaming] */
  18841. /*! export 2783 [provided] [no usage info] [missing usage info prevents renaming] */
  18842. /*! export 2784 [provided] [no usage info] [missing usage info prevents renaming] */
  18843. /*! export 2785 [provided] [no usage info] [missing usage info prevents renaming] */
  18844. /*! export 2786 [provided] [no usage info] [missing usage info prevents renaming] */
  18845. /*! export 2787 [provided] [no usage info] [missing usage info prevents renaming] */
  18846. /*! export 2788 [provided] [no usage info] [missing usage info prevents renaming] */
  18847. /*! export 2789 [provided] [no usage info] [missing usage info prevents renaming] */
  18848. /*! export 279 [provided] [no usage info] [missing usage info prevents renaming] */
  18849. /*! export 2790 [provided] [no usage info] [missing usage info prevents renaming] */
  18850. /*! export 2791 [provided] [no usage info] [missing usage info prevents renaming] */
  18851. /*! export 2792 [provided] [no usage info] [missing usage info prevents renaming] */
  18852. /*! export 2793 [provided] [no usage info] [missing usage info prevents renaming] */
  18853. /*! export 2794 [provided] [no usage info] [missing usage info prevents renaming] */
  18854. /*! export 2795 [provided] [no usage info] [missing usage info prevents renaming] */
  18855. /*! export 2796 [provided] [no usage info] [missing usage info prevents renaming] */
  18856. /*! export 2797 [provided] [no usage info] [missing usage info prevents renaming] */
  18857. /*! export 2798 [provided] [no usage info] [missing usage info prevents renaming] */
  18858. /*! export 2799 [provided] [no usage info] [missing usage info prevents renaming] */
  18859. /*! export 28 [provided] [no usage info] [missing usage info prevents renaming] */
  18860. /*! export 280 [provided] [no usage info] [missing usage info prevents renaming] */
  18861. /*! export 2800 [provided] [no usage info] [missing usage info prevents renaming] */
  18862. /*! export 2801 [provided] [no usage info] [missing usage info prevents renaming] */
  18863. /*! export 2802 [provided] [no usage info] [missing usage info prevents renaming] */
  18864. /*! export 2803 [provided] [no usage info] [missing usage info prevents renaming] */
  18865. /*! export 2804 [provided] [no usage info] [missing usage info prevents renaming] */
  18866. /*! export 2805 [provided] [no usage info] [missing usage info prevents renaming] */
  18867. /*! export 2806 [provided] [no usage info] [missing usage info prevents renaming] */
  18868. /*! export 2807 [provided] [no usage info] [missing usage info prevents renaming] */
  18869. /*! export 2808 [provided] [no usage info] [missing usage info prevents renaming] */
  18870. /*! export 2809 [provided] [no usage info] [missing usage info prevents renaming] */
  18871. /*! export 281 [provided] [no usage info] [missing usage info prevents renaming] */
  18872. /*! export 2810 [provided] [no usage info] [missing usage info prevents renaming] */
  18873. /*! export 2811 [provided] [no usage info] [missing usage info prevents renaming] */
  18874. /*! export 2812 [provided] [no usage info] [missing usage info prevents renaming] */
  18875. /*! export 2813 [provided] [no usage info] [missing usage info prevents renaming] */
  18876. /*! export 2814 [provided] [no usage info] [missing usage info prevents renaming] */
  18877. /*! export 2815 [provided] [no usage info] [missing usage info prevents renaming] */
  18878. /*! export 2816 [provided] [no usage info] [missing usage info prevents renaming] */
  18879. /*! export 2817 [provided] [no usage info] [missing usage info prevents renaming] */
  18880. /*! export 2818 [provided] [no usage info] [missing usage info prevents renaming] */
  18881. /*! export 2819 [provided] [no usage info] [missing usage info prevents renaming] */
  18882. /*! export 282 [provided] [no usage info] [missing usage info prevents renaming] */
  18883. /*! export 2820 [provided] [no usage info] [missing usage info prevents renaming] */
  18884. /*! export 2821 [provided] [no usage info] [missing usage info prevents renaming] */
  18885. /*! export 2822 [provided] [no usage info] [missing usage info prevents renaming] */
  18886. /*! export 2823 [provided] [no usage info] [missing usage info prevents renaming] */
  18887. /*! export 2824 [provided] [no usage info] [missing usage info prevents renaming] */
  18888. /*! export 2825 [provided] [no usage info] [missing usage info prevents renaming] */
  18889. /*! export 2826 [provided] [no usage info] [missing usage info prevents renaming] */
  18890. /*! export 2827 [provided] [no usage info] [missing usage info prevents renaming] */
  18891. /*! export 2828 [provided] [no usage info] [missing usage info prevents renaming] */
  18892. /*! export 2829 [provided] [no usage info] [missing usage info prevents renaming] */
  18893. /*! export 283 [provided] [no usage info] [missing usage info prevents renaming] */
  18894. /*! export 2830 [provided] [no usage info] [missing usage info prevents renaming] */
  18895. /*! export 2831 [provided] [no usage info] [missing usage info prevents renaming] */
  18896. /*! export 2832 [provided] [no usage info] [missing usage info prevents renaming] */
  18897. /*! export 2833 [provided] [no usage info] [missing usage info prevents renaming] */
  18898. /*! export 2834 [provided] [no usage info] [missing usage info prevents renaming] */
  18899. /*! export 2835 [provided] [no usage info] [missing usage info prevents renaming] */
  18900. /*! export 2836 [provided] [no usage info] [missing usage info prevents renaming] */
  18901. /*! export 2837 [provided] [no usage info] [missing usage info prevents renaming] */
  18902. /*! export 2838 [provided] [no usage info] [missing usage info prevents renaming] */
  18903. /*! export 2839 [provided] [no usage info] [missing usage info prevents renaming] */
  18904. /*! export 284 [provided] [no usage info] [missing usage info prevents renaming] */
  18905. /*! export 2840 [provided] [no usage info] [missing usage info prevents renaming] */
  18906. /*! export 2841 [provided] [no usage info] [missing usage info prevents renaming] */
  18907. /*! export 2842 [provided] [no usage info] [missing usage info prevents renaming] */
  18908. /*! export 2843 [provided] [no usage info] [missing usage info prevents renaming] */
  18909. /*! export 2844 [provided] [no usage info] [missing usage info prevents renaming] */
  18910. /*! export 2845 [provided] [no usage info] [missing usage info prevents renaming] */
  18911. /*! export 2846 [provided] [no usage info] [missing usage info prevents renaming] */
  18912. /*! export 2847 [provided] [no usage info] [missing usage info prevents renaming] */
  18913. /*! export 2848 [provided] [no usage info] [missing usage info prevents renaming] */
  18914. /*! export 2849 [provided] [no usage info] [missing usage info prevents renaming] */
  18915. /*! export 285 [provided] [no usage info] [missing usage info prevents renaming] */
  18916. /*! export 2850 [provided] [no usage info] [missing usage info prevents renaming] */
  18917. /*! export 2851 [provided] [no usage info] [missing usage info prevents renaming] */
  18918. /*! export 2852 [provided] [no usage info] [missing usage info prevents renaming] */
  18919. /*! export 2853 [provided] [no usage info] [missing usage info prevents renaming] */
  18920. /*! export 2854 [provided] [no usage info] [missing usage info prevents renaming] */
  18921. /*! export 2855 [provided] [no usage info] [missing usage info prevents renaming] */
  18922. /*! export 2856 [provided] [no usage info] [missing usage info prevents renaming] */
  18923. /*! export 2857 [provided] [no usage info] [missing usage info prevents renaming] */
  18924. /*! export 2858 [provided] [no usage info] [missing usage info prevents renaming] */
  18925. /*! export 2859 [provided] [no usage info] [missing usage info prevents renaming] */
  18926. /*! export 286 [provided] [no usage info] [missing usage info prevents renaming] */
  18927. /*! export 2860 [provided] [no usage info] [missing usage info prevents renaming] */
  18928. /*! export 2861 [provided] [no usage info] [missing usage info prevents renaming] */
  18929. /*! export 2862 [provided] [no usage info] [missing usage info prevents renaming] */
  18930. /*! export 2863 [provided] [no usage info] [missing usage info prevents renaming] */
  18931. /*! export 2864 [provided] [no usage info] [missing usage info prevents renaming] */
  18932. /*! export 2865 [provided] [no usage info] [missing usage info prevents renaming] */
  18933. /*! export 2866 [provided] [no usage info] [missing usage info prevents renaming] */
  18934. /*! export 2867 [provided] [no usage info] [missing usage info prevents renaming] */
  18935. /*! export 2868 [provided] [no usage info] [missing usage info prevents renaming] */
  18936. /*! export 2869 [provided] [no usage info] [missing usage info prevents renaming] */
  18937. /*! export 287 [provided] [no usage info] [missing usage info prevents renaming] */
  18938. /*! export 2870 [provided] [no usage info] [missing usage info prevents renaming] */
  18939. /*! export 2871 [provided] [no usage info] [missing usage info prevents renaming] */
  18940. /*! export 2872 [provided] [no usage info] [missing usage info prevents renaming] */
  18941. /*! export 2873 [provided] [no usage info] [missing usage info prevents renaming] */
  18942. /*! export 2874 [provided] [no usage info] [missing usage info prevents renaming] */
  18943. /*! export 2875 [provided] [no usage info] [missing usage info prevents renaming] */
  18944. /*! export 2876 [provided] [no usage info] [missing usage info prevents renaming] */
  18945. /*! export 2877 [provided] [no usage info] [missing usage info prevents renaming] */
  18946. /*! export 2878 [provided] [no usage info] [missing usage info prevents renaming] */
  18947. /*! export 2879 [provided] [no usage info] [missing usage info prevents renaming] */
  18948. /*! export 288 [provided] [no usage info] [missing usage info prevents renaming] */
  18949. /*! export 2880 [provided] [no usage info] [missing usage info prevents renaming] */
  18950. /*! export 2881 [provided] [no usage info] [missing usage info prevents renaming] */
  18951. /*! export 2882 [provided] [no usage info] [missing usage info prevents renaming] */
  18952. /*! export 2883 [provided] [no usage info] [missing usage info prevents renaming] */
  18953. /*! export 2884 [provided] [no usage info] [missing usage info prevents renaming] */
  18954. /*! export 2885 [provided] [no usage info] [missing usage info prevents renaming] */
  18955. /*! export 2886 [provided] [no usage info] [missing usage info prevents renaming] */
  18956. /*! export 2887 [provided] [no usage info] [missing usage info prevents renaming] */
  18957. /*! export 2888 [provided] [no usage info] [missing usage info prevents renaming] */
  18958. /*! export 2889 [provided] [no usage info] [missing usage info prevents renaming] */
  18959. /*! export 289 [provided] [no usage info] [missing usage info prevents renaming] */
  18960. /*! export 2890 [provided] [no usage info] [missing usage info prevents renaming] */
  18961. /*! export 2891 [provided] [no usage info] [missing usage info prevents renaming] */
  18962. /*! export 2892 [provided] [no usage info] [missing usage info prevents renaming] */
  18963. /*! export 2893 [provided] [no usage info] [missing usage info prevents renaming] */
  18964. /*! export 2894 [provided] [no usage info] [missing usage info prevents renaming] */
  18965. /*! export 2895 [provided] [no usage info] [missing usage info prevents renaming] */
  18966. /*! export 2896 [provided] [no usage info] [missing usage info prevents renaming] */
  18967. /*! export 2897 [provided] [no usage info] [missing usage info prevents renaming] */
  18968. /*! export 2898 [provided] [no usage info] [missing usage info prevents renaming] */
  18969. /*! export 2899 [provided] [no usage info] [missing usage info prevents renaming] */
  18970. /*! export 29 [provided] [no usage info] [missing usage info prevents renaming] */
  18971. /*! export 290 [provided] [no usage info] [missing usage info prevents renaming] */
  18972. /*! export 2900 [provided] [no usage info] [missing usage info prevents renaming] */
  18973. /*! export 2901 [provided] [no usage info] [missing usage info prevents renaming] */
  18974. /*! export 2902 [provided] [no usage info] [missing usage info prevents renaming] */
  18975. /*! export 2903 [provided] [no usage info] [missing usage info prevents renaming] */
  18976. /*! export 2904 [provided] [no usage info] [missing usage info prevents renaming] */
  18977. /*! export 2905 [provided] [no usage info] [missing usage info prevents renaming] */
  18978. /*! export 2906 [provided] [no usage info] [missing usage info prevents renaming] */
  18979. /*! export 2907 [provided] [no usage info] [missing usage info prevents renaming] */
  18980. /*! export 2908 [provided] [no usage info] [missing usage info prevents renaming] */
  18981. /*! export 2909 [provided] [no usage info] [missing usage info prevents renaming] */
  18982. /*! export 291 [provided] [no usage info] [missing usage info prevents renaming] */
  18983. /*! export 2910 [provided] [no usage info] [missing usage info prevents renaming] */
  18984. /*! export 2911 [provided] [no usage info] [missing usage info prevents renaming] */
  18985. /*! export 2912 [provided] [no usage info] [missing usage info prevents renaming] */
  18986. /*! export 2913 [provided] [no usage info] [missing usage info prevents renaming] */
  18987. /*! export 2914 [provided] [no usage info] [missing usage info prevents renaming] */
  18988. /*! export 2915 [provided] [no usage info] [missing usage info prevents renaming] */
  18989. /*! export 2916 [provided] [no usage info] [missing usage info prevents renaming] */
  18990. /*! export 2917 [provided] [no usage info] [missing usage info prevents renaming] */
  18991. /*! export 2918 [provided] [no usage info] [missing usage info prevents renaming] */
  18992. /*! export 2919 [provided] [no usage info] [missing usage info prevents renaming] */
  18993. /*! export 292 [provided] [no usage info] [missing usage info prevents renaming] */
  18994. /*! export 2920 [provided] [no usage info] [missing usage info prevents renaming] */
  18995. /*! export 2921 [provided] [no usage info] [missing usage info prevents renaming] */
  18996. /*! export 2922 [provided] [no usage info] [missing usage info prevents renaming] */
  18997. /*! export 2923 [provided] [no usage info] [missing usage info prevents renaming] */
  18998. /*! export 2924 [provided] [no usage info] [missing usage info prevents renaming] */
  18999. /*! export 2925 [provided] [no usage info] [missing usage info prevents renaming] */
  19000. /*! export 2926 [provided] [no usage info] [missing usage info prevents renaming] */
  19001. /*! export 2927 [provided] [no usage info] [missing usage info prevents renaming] */
  19002. /*! export 2928 [provided] [no usage info] [missing usage info prevents renaming] */
  19003. /*! export 2929 [provided] [no usage info] [missing usage info prevents renaming] */
  19004. /*! export 293 [provided] [no usage info] [missing usage info prevents renaming] */
  19005. /*! export 2930 [provided] [no usage info] [missing usage info prevents renaming] */
  19006. /*! export 2931 [provided] [no usage info] [missing usage info prevents renaming] */
  19007. /*! export 2932 [provided] [no usage info] [missing usage info prevents renaming] */
  19008. /*! export 2933 [provided] [no usage info] [missing usage info prevents renaming] */
  19009. /*! export 2934 [provided] [no usage info] [missing usage info prevents renaming] */
  19010. /*! export 2935 [provided] [no usage info] [missing usage info prevents renaming] */
  19011. /*! export 2936 [provided] [no usage info] [missing usage info prevents renaming] */
  19012. /*! export 2937 [provided] [no usage info] [missing usage info prevents renaming] */
  19013. /*! export 2938 [provided] [no usage info] [missing usage info prevents renaming] */
  19014. /*! export 2939 [provided] [no usage info] [missing usage info prevents renaming] */
  19015. /*! export 294 [provided] [no usage info] [missing usage info prevents renaming] */
  19016. /*! export 2940 [provided] [no usage info] [missing usage info prevents renaming] */
  19017. /*! export 2941 [provided] [no usage info] [missing usage info prevents renaming] */
  19018. /*! export 2942 [provided] [no usage info] [missing usage info prevents renaming] */
  19019. /*! export 2943 [provided] [no usage info] [missing usage info prevents renaming] */
  19020. /*! export 2944 [provided] [no usage info] [missing usage info prevents renaming] */
  19021. /*! export 2945 [provided] [no usage info] [missing usage info prevents renaming] */
  19022. /*! export 2946 [provided] [no usage info] [missing usage info prevents renaming] */
  19023. /*! export 2947 [provided] [no usage info] [missing usage info prevents renaming] */
  19024. /*! export 2948 [provided] [no usage info] [missing usage info prevents renaming] */
  19025. /*! export 2949 [provided] [no usage info] [missing usage info prevents renaming] */
  19026. /*! export 295 [provided] [no usage info] [missing usage info prevents renaming] */
  19027. /*! export 2950 [provided] [no usage info] [missing usage info prevents renaming] */
  19028. /*! export 2951 [provided] [no usage info] [missing usage info prevents renaming] */
  19029. /*! export 2952 [provided] [no usage info] [missing usage info prevents renaming] */
  19030. /*! export 2953 [provided] [no usage info] [missing usage info prevents renaming] */
  19031. /*! export 2954 [provided] [no usage info] [missing usage info prevents renaming] */
  19032. /*! export 2955 [provided] [no usage info] [missing usage info prevents renaming] */
  19033. /*! export 2956 [provided] [no usage info] [missing usage info prevents renaming] */
  19034. /*! export 2957 [provided] [no usage info] [missing usage info prevents renaming] */
  19035. /*! export 2958 [provided] [no usage info] [missing usage info prevents renaming] */
  19036. /*! export 2959 [provided] [no usage info] [missing usage info prevents renaming] */
  19037. /*! export 296 [provided] [no usage info] [missing usage info prevents renaming] */
  19038. /*! export 2960 [provided] [no usage info] [missing usage info prevents renaming] */
  19039. /*! export 2961 [provided] [no usage info] [missing usage info prevents renaming] */
  19040. /*! export 2962 [provided] [no usage info] [missing usage info prevents renaming] */
  19041. /*! export 2963 [provided] [no usage info] [missing usage info prevents renaming] */
  19042. /*! export 2964 [provided] [no usage info] [missing usage info prevents renaming] */
  19043. /*! export 2965 [provided] [no usage info] [missing usage info prevents renaming] */
  19044. /*! export 2966 [provided] [no usage info] [missing usage info prevents renaming] */
  19045. /*! export 2967 [provided] [no usage info] [missing usage info prevents renaming] */
  19046. /*! export 2968 [provided] [no usage info] [missing usage info prevents renaming] */
  19047. /*! export 2969 [provided] [no usage info] [missing usage info prevents renaming] */
  19048. /*! export 297 [provided] [no usage info] [missing usage info prevents renaming] */
  19049. /*! export 2970 [provided] [no usage info] [missing usage info prevents renaming] */
  19050. /*! export 2971 [provided] [no usage info] [missing usage info prevents renaming] */
  19051. /*! export 2972 [provided] [no usage info] [missing usage info prevents renaming] */
  19052. /*! export 2973 [provided] [no usage info] [missing usage info prevents renaming] */
  19053. /*! export 2974 [provided] [no usage info] [missing usage info prevents renaming] */
  19054. /*! export 2975 [provided] [no usage info] [missing usage info prevents renaming] */
  19055. /*! export 2976 [provided] [no usage info] [missing usage info prevents renaming] */
  19056. /*! export 2977 [provided] [no usage info] [missing usage info prevents renaming] */
  19057. /*! export 2978 [provided] [no usage info] [missing usage info prevents renaming] */
  19058. /*! export 2979 [provided] [no usage info] [missing usage info prevents renaming] */
  19059. /*! export 298 [provided] [no usage info] [missing usage info prevents renaming] */
  19060. /*! export 2980 [provided] [no usage info] [missing usage info prevents renaming] */
  19061. /*! export 2981 [provided] [no usage info] [missing usage info prevents renaming] */
  19062. /*! export 2982 [provided] [no usage info] [missing usage info prevents renaming] */
  19063. /*! export 2983 [provided] [no usage info] [missing usage info prevents renaming] */
  19064. /*! export 2984 [provided] [no usage info] [missing usage info prevents renaming] */
  19065. /*! export 2985 [provided] [no usage info] [missing usage info prevents renaming] */
  19066. /*! export 2986 [provided] [no usage info] [missing usage info prevents renaming] */
  19067. /*! export 2987 [provided] [no usage info] [missing usage info prevents renaming] */
  19068. /*! export 2988 [provided] [no usage info] [missing usage info prevents renaming] */
  19069. /*! export 2989 [provided] [no usage info] [missing usage info prevents renaming] */
  19070. /*! export 299 [provided] [no usage info] [missing usage info prevents renaming] */
  19071. /*! export 2990 [provided] [no usage info] [missing usage info prevents renaming] */
  19072. /*! export 2991 [provided] [no usage info] [missing usage info prevents renaming] */
  19073. /*! export 2992 [provided] [no usage info] [missing usage info prevents renaming] */
  19074. /*! export 2993 [provided] [no usage info] [missing usage info prevents renaming] */
  19075. /*! export 2994 [provided] [no usage info] [missing usage info prevents renaming] */
  19076. /*! export 2995 [provided] [no usage info] [missing usage info prevents renaming] */
  19077. /*! export 2996 [provided] [no usage info] [missing usage info prevents renaming] */
  19078. /*! export 2997 [provided] [no usage info] [missing usage info prevents renaming] */
  19079. /*! export 2998 [provided] [no usage info] [missing usage info prevents renaming] */
  19080. /*! export 2999 [provided] [no usage info] [missing usage info prevents renaming] */
  19081. /*! export 3 [provided] [no usage info] [missing usage info prevents renaming] */
  19082. /*! export 30 [provided] [no usage info] [missing usage info prevents renaming] */
  19083. /*! export 300 [provided] [no usage info] [missing usage info prevents renaming] */
  19084. /*! export 3000 [provided] [no usage info] [missing usage info prevents renaming] */
  19085. /*! export 3001 [provided] [no usage info] [missing usage info prevents renaming] */
  19086. /*! export 3002 [provided] [no usage info] [missing usage info prevents renaming] */
  19087. /*! export 3003 [provided] [no usage info] [missing usage info prevents renaming] */
  19088. /*! export 3004 [provided] [no usage info] [missing usage info prevents renaming] */
  19089. /*! export 3005 [provided] [no usage info] [missing usage info prevents renaming] */
  19090. /*! export 3006 [provided] [no usage info] [missing usage info prevents renaming] */
  19091. /*! export 3007 [provided] [no usage info] [missing usage info prevents renaming] */
  19092. /*! export 3008 [provided] [no usage info] [missing usage info prevents renaming] */
  19093. /*! export 3009 [provided] [no usage info] [missing usage info prevents renaming] */
  19094. /*! export 301 [provided] [no usage info] [missing usage info prevents renaming] */
  19095. /*! export 3010 [provided] [no usage info] [missing usage info prevents renaming] */
  19096. /*! export 3011 [provided] [no usage info] [missing usage info prevents renaming] */
  19097. /*! export 3012 [provided] [no usage info] [missing usage info prevents renaming] */
  19098. /*! export 3013 [provided] [no usage info] [missing usage info prevents renaming] */
  19099. /*! export 3014 [provided] [no usage info] [missing usage info prevents renaming] */
  19100. /*! export 3015 [provided] [no usage info] [missing usage info prevents renaming] */
  19101. /*! export 3016 [provided] [no usage info] [missing usage info prevents renaming] */
  19102. /*! export 3017 [provided] [no usage info] [missing usage info prevents renaming] */
  19103. /*! export 3018 [provided] [no usage info] [missing usage info prevents renaming] */
  19104. /*! export 3019 [provided] [no usage info] [missing usage info prevents renaming] */
  19105. /*! export 302 [provided] [no usage info] [missing usage info prevents renaming] */
  19106. /*! export 3020 [provided] [no usage info] [missing usage info prevents renaming] */
  19107. /*! export 3021 [provided] [no usage info] [missing usage info prevents renaming] */
  19108. /*! export 3022 [provided] [no usage info] [missing usage info prevents renaming] */
  19109. /*! export 3023 [provided] [no usage info] [missing usage info prevents renaming] */
  19110. /*! export 3024 [provided] [no usage info] [missing usage info prevents renaming] */
  19111. /*! export 3025 [provided] [no usage info] [missing usage info prevents renaming] */
  19112. /*! export 3026 [provided] [no usage info] [missing usage info prevents renaming] */
  19113. /*! export 3027 [provided] [no usage info] [missing usage info prevents renaming] */
  19114. /*! export 3028 [provided] [no usage info] [missing usage info prevents renaming] */
  19115. /*! export 3029 [provided] [no usage info] [missing usage info prevents renaming] */
  19116. /*! export 303 [provided] [no usage info] [missing usage info prevents renaming] */
  19117. /*! export 3030 [provided] [no usage info] [missing usage info prevents renaming] */
  19118. /*! export 3031 [provided] [no usage info] [missing usage info prevents renaming] */
  19119. /*! export 3032 [provided] [no usage info] [missing usage info prevents renaming] */
  19120. /*! export 3033 [provided] [no usage info] [missing usage info prevents renaming] */
  19121. /*! export 3034 [provided] [no usage info] [missing usage info prevents renaming] */
  19122. /*! export 3035 [provided] [no usage info] [missing usage info prevents renaming] */
  19123. /*! export 3036 [provided] [no usage info] [missing usage info prevents renaming] */
  19124. /*! export 3037 [provided] [no usage info] [missing usage info prevents renaming] */
  19125. /*! export 3038 [provided] [no usage info] [missing usage info prevents renaming] */
  19126. /*! export 3039 [provided] [no usage info] [missing usage info prevents renaming] */
  19127. /*! export 304 [provided] [no usage info] [missing usage info prevents renaming] */
  19128. /*! export 3040 [provided] [no usage info] [missing usage info prevents renaming] */
  19129. /*! export 3041 [provided] [no usage info] [missing usage info prevents renaming] */
  19130. /*! export 3042 [provided] [no usage info] [missing usage info prevents renaming] */
  19131. /*! export 3043 [provided] [no usage info] [missing usage info prevents renaming] */
  19132. /*! export 3044 [provided] [no usage info] [missing usage info prevents renaming] */
  19133. /*! export 3045 [provided] [no usage info] [missing usage info prevents renaming] */
  19134. /*! export 3046 [provided] [no usage info] [missing usage info prevents renaming] */
  19135. /*! export 3047 [provided] [no usage info] [missing usage info prevents renaming] */
  19136. /*! export 3048 [provided] [no usage info] [missing usage info prevents renaming] */
  19137. /*! export 3049 [provided] [no usage info] [missing usage info prevents renaming] */
  19138. /*! export 305 [provided] [no usage info] [missing usage info prevents renaming] */
  19139. /*! export 3050 [provided] [no usage info] [missing usage info prevents renaming] */
  19140. /*! export 3051 [provided] [no usage info] [missing usage info prevents renaming] */
  19141. /*! export 3052 [provided] [no usage info] [missing usage info prevents renaming] */
  19142. /*! export 3053 [provided] [no usage info] [missing usage info prevents renaming] */
  19143. /*! export 3054 [provided] [no usage info] [missing usage info prevents renaming] */
  19144. /*! export 3055 [provided] [no usage info] [missing usage info prevents renaming] */
  19145. /*! export 3056 [provided] [no usage info] [missing usage info prevents renaming] */
  19146. /*! export 3057 [provided] [no usage info] [missing usage info prevents renaming] */
  19147. /*! export 3058 [provided] [no usage info] [missing usage info prevents renaming] */
  19148. /*! export 3059 [provided] [no usage info] [missing usage info prevents renaming] */
  19149. /*! export 306 [provided] [no usage info] [missing usage info prevents renaming] */
  19150. /*! export 3060 [provided] [no usage info] [missing usage info prevents renaming] */
  19151. /*! export 3061 [provided] [no usage info] [missing usage info prevents renaming] */
  19152. /*! export 3062 [provided] [no usage info] [missing usage info prevents renaming] */
  19153. /*! export 3063 [provided] [no usage info] [missing usage info prevents renaming] */
  19154. /*! export 3064 [provided] [no usage info] [missing usage info prevents renaming] */
  19155. /*! export 3065 [provided] [no usage info] [missing usage info prevents renaming] */
  19156. /*! export 3066 [provided] [no usage info] [missing usage info prevents renaming] */
  19157. /*! export 3067 [provided] [no usage info] [missing usage info prevents renaming] */
  19158. /*! export 3068 [provided] [no usage info] [missing usage info prevents renaming] */
  19159. /*! export 3069 [provided] [no usage info] [missing usage info prevents renaming] */
  19160. /*! export 307 [provided] [no usage info] [missing usage info prevents renaming] */
  19161. /*! export 3070 [provided] [no usage info] [missing usage info prevents renaming] */
  19162. /*! export 3071 [provided] [no usage info] [missing usage info prevents renaming] */
  19163. /*! export 3072 [provided] [no usage info] [missing usage info prevents renaming] */
  19164. /*! export 3073 [provided] [no usage info] [missing usage info prevents renaming] */
  19165. /*! export 3074 [provided] [no usage info] [missing usage info prevents renaming] */
  19166. /*! export 3075 [provided] [no usage info] [missing usage info prevents renaming] */
  19167. /*! export 3076 [provided] [no usage info] [missing usage info prevents renaming] */
  19168. /*! export 3077 [provided] [no usage info] [missing usage info prevents renaming] */
  19169. /*! export 3078 [provided] [no usage info] [missing usage info prevents renaming] */
  19170. /*! export 3079 [provided] [no usage info] [missing usage info prevents renaming] */
  19171. /*! export 308 [provided] [no usage info] [missing usage info prevents renaming] */
  19172. /*! export 3080 [provided] [no usage info] [missing usage info prevents renaming] */
  19173. /*! export 3081 [provided] [no usage info] [missing usage info prevents renaming] */
  19174. /*! export 3082 [provided] [no usage info] [missing usage info prevents renaming] */
  19175. /*! export 3083 [provided] [no usage info] [missing usage info prevents renaming] */
  19176. /*! export 3084 [provided] [no usage info] [missing usage info prevents renaming] */
  19177. /*! export 3085 [provided] [no usage info] [missing usage info prevents renaming] */
  19178. /*! export 3086 [provided] [no usage info] [missing usage info prevents renaming] */
  19179. /*! export 3087 [provided] [no usage info] [missing usage info prevents renaming] */
  19180. /*! export 3088 [provided] [no usage info] [missing usage info prevents renaming] */
  19181. /*! export 3089 [provided] [no usage info] [missing usage info prevents renaming] */
  19182. /*! export 309 [provided] [no usage info] [missing usage info prevents renaming] */
  19183. /*! export 3090 [provided] [no usage info] [missing usage info prevents renaming] */
  19184. /*! export 3091 [provided] [no usage info] [missing usage info prevents renaming] */
  19185. /*! export 3092 [provided] [no usage info] [missing usage info prevents renaming] */
  19186. /*! export 3093 [provided] [no usage info] [missing usage info prevents renaming] */
  19187. /*! export 3094 [provided] [no usage info] [missing usage info prevents renaming] */
  19188. /*! export 3095 [provided] [no usage info] [missing usage info prevents renaming] */
  19189. /*! export 3096 [provided] [no usage info] [missing usage info prevents renaming] */
  19190. /*! export 3097 [provided] [no usage info] [missing usage info prevents renaming] */
  19191. /*! export 3098 [provided] [no usage info] [missing usage info prevents renaming] */
  19192. /*! export 3099 [provided] [no usage info] [missing usage info prevents renaming] */
  19193. /*! export 31 [provided] [no usage info] [missing usage info prevents renaming] */
  19194. /*! export 310 [provided] [no usage info] [missing usage info prevents renaming] */
  19195. /*! export 3100 [provided] [no usage info] [missing usage info prevents renaming] */
  19196. /*! export 3101 [provided] [no usage info] [missing usage info prevents renaming] */
  19197. /*! export 3102 [provided] [no usage info] [missing usage info prevents renaming] */
  19198. /*! export 3103 [provided] [no usage info] [missing usage info prevents renaming] */
  19199. /*! export 3104 [provided] [no usage info] [missing usage info prevents renaming] */
  19200. /*! export 3105 [provided] [no usage info] [missing usage info prevents renaming] */
  19201. /*! export 3106 [provided] [no usage info] [missing usage info prevents renaming] */
  19202. /*! export 3107 [provided] [no usage info] [missing usage info prevents renaming] */
  19203. /*! export 3108 [provided] [no usage info] [missing usage info prevents renaming] */
  19204. /*! export 3109 [provided] [no usage info] [missing usage info prevents renaming] */
  19205. /*! export 311 [provided] [no usage info] [missing usage info prevents renaming] */
  19206. /*! export 3110 [provided] [no usage info] [missing usage info prevents renaming] */
  19207. /*! export 3111 [provided] [no usage info] [missing usage info prevents renaming] */
  19208. /*! export 3112 [provided] [no usage info] [missing usage info prevents renaming] */
  19209. /*! export 3113 [provided] [no usage info] [missing usage info prevents renaming] */
  19210. /*! export 3114 [provided] [no usage info] [missing usage info prevents renaming] */
  19211. /*! export 3115 [provided] [no usage info] [missing usage info prevents renaming] */
  19212. /*! export 3116 [provided] [no usage info] [missing usage info prevents renaming] */
  19213. /*! export 3117 [provided] [no usage info] [missing usage info prevents renaming] */
  19214. /*! export 3118 [provided] [no usage info] [missing usage info prevents renaming] */
  19215. /*! export 3119 [provided] [no usage info] [missing usage info prevents renaming] */
  19216. /*! export 312 [provided] [no usage info] [missing usage info prevents renaming] */
  19217. /*! export 3120 [provided] [no usage info] [missing usage info prevents renaming] */
  19218. /*! export 3121 [provided] [no usage info] [missing usage info prevents renaming] */
  19219. /*! export 3122 [provided] [no usage info] [missing usage info prevents renaming] */
  19220. /*! export 3123 [provided] [no usage info] [missing usage info prevents renaming] */
  19221. /*! export 3124 [provided] [no usage info] [missing usage info prevents renaming] */
  19222. /*! export 3125 [provided] [no usage info] [missing usage info prevents renaming] */
  19223. /*! export 3126 [provided] [no usage info] [missing usage info prevents renaming] */
  19224. /*! export 3127 [provided] [no usage info] [missing usage info prevents renaming] */
  19225. /*! export 3128 [provided] [no usage info] [missing usage info prevents renaming] */
  19226. /*! export 3129 [provided] [no usage info] [missing usage info prevents renaming] */
  19227. /*! export 313 [provided] [no usage info] [missing usage info prevents renaming] */
  19228. /*! export 3130 [provided] [no usage info] [missing usage info prevents renaming] */
  19229. /*! export 3131 [provided] [no usage info] [missing usage info prevents renaming] */
  19230. /*! export 3132 [provided] [no usage info] [missing usage info prevents renaming] */
  19231. /*! export 3133 [provided] [no usage info] [missing usage info prevents renaming] */
  19232. /*! export 3134 [provided] [no usage info] [missing usage info prevents renaming] */
  19233. /*! export 3135 [provided] [no usage info] [missing usage info prevents renaming] */
  19234. /*! export 3136 [provided] [no usage info] [missing usage info prevents renaming] */
  19235. /*! export 3137 [provided] [no usage info] [missing usage info prevents renaming] */
  19236. /*! export 3138 [provided] [no usage info] [missing usage info prevents renaming] */
  19237. /*! export 3139 [provided] [no usage info] [missing usage info prevents renaming] */
  19238. /*! export 314 [provided] [no usage info] [missing usage info prevents renaming] */
  19239. /*! export 3140 [provided] [no usage info] [missing usage info prevents renaming] */
  19240. /*! export 3141 [provided] [no usage info] [missing usage info prevents renaming] */
  19241. /*! export 3142 [provided] [no usage info] [missing usage info prevents renaming] */
  19242. /*! export 3143 [provided] [no usage info] [missing usage info prevents renaming] */
  19243. /*! export 3144 [provided] [no usage info] [missing usage info prevents renaming] */
  19244. /*! export 3145 [provided] [no usage info] [missing usage info prevents renaming] */
  19245. /*! export 3146 [provided] [no usage info] [missing usage info prevents renaming] */
  19246. /*! export 3147 [provided] [no usage info] [missing usage info prevents renaming] */
  19247. /*! export 3148 [provided] [no usage info] [missing usage info prevents renaming] */
  19248. /*! export 3149 [provided] [no usage info] [missing usage info prevents renaming] */
  19249. /*! export 315 [provided] [no usage info] [missing usage info prevents renaming] */
  19250. /*! export 3150 [provided] [no usage info] [missing usage info prevents renaming] */
  19251. /*! export 3151 [provided] [no usage info] [missing usage info prevents renaming] */
  19252. /*! export 3152 [provided] [no usage info] [missing usage info prevents renaming] */
  19253. /*! export 3153 [provided] [no usage info] [missing usage info prevents renaming] */
  19254. /*! export 3154 [provided] [no usage info] [missing usage info prevents renaming] */
  19255. /*! export 3155 [provided] [no usage info] [missing usage info prevents renaming] */
  19256. /*! export 3156 [provided] [no usage info] [missing usage info prevents renaming] */
  19257. /*! export 3157 [provided] [no usage info] [missing usage info prevents renaming] */
  19258. /*! export 3158 [provided] [no usage info] [missing usage info prevents renaming] */
  19259. /*! export 3159 [provided] [no usage info] [missing usage info prevents renaming] */
  19260. /*! export 316 [provided] [no usage info] [missing usage info prevents renaming] */
  19261. /*! export 3160 [provided] [no usage info] [missing usage info prevents renaming] */
  19262. /*! export 3161 [provided] [no usage info] [missing usage info prevents renaming] */
  19263. /*! export 3162 [provided] [no usage info] [missing usage info prevents renaming] */
  19264. /*! export 3163 [provided] [no usage info] [missing usage info prevents renaming] */
  19265. /*! export 3164 [provided] [no usage info] [missing usage info prevents renaming] */
  19266. /*! export 3165 [provided] [no usage info] [missing usage info prevents renaming] */
  19267. /*! export 3166 [provided] [no usage info] [missing usage info prevents renaming] */
  19268. /*! export 3167 [provided] [no usage info] [missing usage info prevents renaming] */
  19269. /*! export 3168 [provided] [no usage info] [missing usage info prevents renaming] */
  19270. /*! export 3169 [provided] [no usage info] [missing usage info prevents renaming] */
  19271. /*! export 317 [provided] [no usage info] [missing usage info prevents renaming] */
  19272. /*! export 3170 [provided] [no usage info] [missing usage info prevents renaming] */
  19273. /*! export 3171 [provided] [no usage info] [missing usage info prevents renaming] */
  19274. /*! export 3172 [provided] [no usage info] [missing usage info prevents renaming] */
  19275. /*! export 3173 [provided] [no usage info] [missing usage info prevents renaming] */
  19276. /*! export 3174 [provided] [no usage info] [missing usage info prevents renaming] */
  19277. /*! export 3175 [provided] [no usage info] [missing usage info prevents renaming] */
  19278. /*! export 3176 [provided] [no usage info] [missing usage info prevents renaming] */
  19279. /*! export 3177 [provided] [no usage info] [missing usage info prevents renaming] */
  19280. /*! export 3178 [provided] [no usage info] [missing usage info prevents renaming] */
  19281. /*! export 3179 [provided] [no usage info] [missing usage info prevents renaming] */
  19282. /*! export 318 [provided] [no usage info] [missing usage info prevents renaming] */
  19283. /*! export 3180 [provided] [no usage info] [missing usage info prevents renaming] */
  19284. /*! export 3181 [provided] [no usage info] [missing usage info prevents renaming] */
  19285. /*! export 3182 [provided] [no usage info] [missing usage info prevents renaming] */
  19286. /*! export 3183 [provided] [no usage info] [missing usage info prevents renaming] */
  19287. /*! export 3184 [provided] [no usage info] [missing usage info prevents renaming] */
  19288. /*! export 3185 [provided] [no usage info] [missing usage info prevents renaming] */
  19289. /*! export 3186 [provided] [no usage info] [missing usage info prevents renaming] */
  19290. /*! export 3187 [provided] [no usage info] [missing usage info prevents renaming] */
  19291. /*! export 3188 [provided] [no usage info] [missing usage info prevents renaming] */
  19292. /*! export 3189 [provided] [no usage info] [missing usage info prevents renaming] */
  19293. /*! export 319 [provided] [no usage info] [missing usage info prevents renaming] */
  19294. /*! export 3190 [provided] [no usage info] [missing usage info prevents renaming] */
  19295. /*! export 3191 [provided] [no usage info] [missing usage info prevents renaming] */
  19296. /*! export 3192 [provided] [no usage info] [missing usage info prevents renaming] */
  19297. /*! export 3193 [provided] [no usage info] [missing usage info prevents renaming] */
  19298. /*! export 3194 [provided] [no usage info] [missing usage info prevents renaming] */
  19299. /*! export 3195 [provided] [no usage info] [missing usage info prevents renaming] */
  19300. /*! export 3196 [provided] [no usage info] [missing usage info prevents renaming] */
  19301. /*! export 3197 [provided] [no usage info] [missing usage info prevents renaming] */
  19302. /*! export 3198 [provided] [no usage info] [missing usage info prevents renaming] */
  19303. /*! export 3199 [provided] [no usage info] [missing usage info prevents renaming] */
  19304. /*! export 32 [provided] [no usage info] [missing usage info prevents renaming] */
  19305. /*! export 320 [provided] [no usage info] [missing usage info prevents renaming] */
  19306. /*! export 3200 [provided] [no usage info] [missing usage info prevents renaming] */
  19307. /*! export 3201 [provided] [no usage info] [missing usage info prevents renaming] */
  19308. /*! export 3202 [provided] [no usage info] [missing usage info prevents renaming] */
  19309. /*! export 3203 [provided] [no usage info] [missing usage info prevents renaming] */
  19310. /*! export 3204 [provided] [no usage info] [missing usage info prevents renaming] */
  19311. /*! export 3205 [provided] [no usage info] [missing usage info prevents renaming] */
  19312. /*! export 3206 [provided] [no usage info] [missing usage info prevents renaming] */
  19313. /*! export 3207 [provided] [no usage info] [missing usage info prevents renaming] */
  19314. /*! export 3208 [provided] [no usage info] [missing usage info prevents renaming] */
  19315. /*! export 3209 [provided] [no usage info] [missing usage info prevents renaming] */
  19316. /*! export 321 [provided] [no usage info] [missing usage info prevents renaming] */
  19317. /*! export 3210 [provided] [no usage info] [missing usage info prevents renaming] */
  19318. /*! export 3211 [provided] [no usage info] [missing usage info prevents renaming] */
  19319. /*! export 3212 [provided] [no usage info] [missing usage info prevents renaming] */
  19320. /*! export 3213 [provided] [no usage info] [missing usage info prevents renaming] */
  19321. /*! export 3214 [provided] [no usage info] [missing usage info prevents renaming] */
  19322. /*! export 3215 [provided] [no usage info] [missing usage info prevents renaming] */
  19323. /*! export 3216 [provided] [no usage info] [missing usage info prevents renaming] */
  19324. /*! export 3217 [provided] [no usage info] [missing usage info prevents renaming] */
  19325. /*! export 3218 [provided] [no usage info] [missing usage info prevents renaming] */
  19326. /*! export 3219 [provided] [no usage info] [missing usage info prevents renaming] */
  19327. /*! export 322 [provided] [no usage info] [missing usage info prevents renaming] */
  19328. /*! export 3220 [provided] [no usage info] [missing usage info prevents renaming] */
  19329. /*! export 3221 [provided] [no usage info] [missing usage info prevents renaming] */
  19330. /*! export 3222 [provided] [no usage info] [missing usage info prevents renaming] */
  19331. /*! export 3223 [provided] [no usage info] [missing usage info prevents renaming] */
  19332. /*! export 3224 [provided] [no usage info] [missing usage info prevents renaming] */
  19333. /*! export 3225 [provided] [no usage info] [missing usage info prevents renaming] */
  19334. /*! export 3226 [provided] [no usage info] [missing usage info prevents renaming] */
  19335. /*! export 3227 [provided] [no usage info] [missing usage info prevents renaming] */
  19336. /*! export 3228 [provided] [no usage info] [missing usage info prevents renaming] */
  19337. /*! export 3229 [provided] [no usage info] [missing usage info prevents renaming] */
  19338. /*! export 323 [provided] [no usage info] [missing usage info prevents renaming] */
  19339. /*! export 3230 [provided] [no usage info] [missing usage info prevents renaming] */
  19340. /*! export 3231 [provided] [no usage info] [missing usage info prevents renaming] */
  19341. /*! export 3232 [provided] [no usage info] [missing usage info prevents renaming] */
  19342. /*! export 3233 [provided] [no usage info] [missing usage info prevents renaming] */
  19343. /*! export 3234 [provided] [no usage info] [missing usage info prevents renaming] */
  19344. /*! export 3235 [provided] [no usage info] [missing usage info prevents renaming] */
  19345. /*! export 3236 [provided] [no usage info] [missing usage info prevents renaming] */
  19346. /*! export 3237 [provided] [no usage info] [missing usage info prevents renaming] */
  19347. /*! export 3238 [provided] [no usage info] [missing usage info prevents renaming] */
  19348. /*! export 3239 [provided] [no usage info] [missing usage info prevents renaming] */
  19349. /*! export 324 [provided] [no usage info] [missing usage info prevents renaming] */
  19350. /*! export 3240 [provided] [no usage info] [missing usage info prevents renaming] */
  19351. /*! export 3241 [provided] [no usage info] [missing usage info prevents renaming] */
  19352. /*! export 3242 [provided] [no usage info] [missing usage info prevents renaming] */
  19353. /*! export 3243 [provided] [no usage info] [missing usage info prevents renaming] */
  19354. /*! export 3244 [provided] [no usage info] [missing usage info prevents renaming] */
  19355. /*! export 3245 [provided] [no usage info] [missing usage info prevents renaming] */
  19356. /*! export 3246 [provided] [no usage info] [missing usage info prevents renaming] */
  19357. /*! export 3247 [provided] [no usage info] [missing usage info prevents renaming] */
  19358. /*! export 3248 [provided] [no usage info] [missing usage info prevents renaming] */
  19359. /*! export 3249 [provided] [no usage info] [missing usage info prevents renaming] */
  19360. /*! export 325 [provided] [no usage info] [missing usage info prevents renaming] */
  19361. /*! export 3250 [provided] [no usage info] [missing usage info prevents renaming] */
  19362. /*! export 3251 [provided] [no usage info] [missing usage info prevents renaming] */
  19363. /*! export 3252 [provided] [no usage info] [missing usage info prevents renaming] */
  19364. /*! export 3253 [provided] [no usage info] [missing usage info prevents renaming] */
  19365. /*! export 3254 [provided] [no usage info] [missing usage info prevents renaming] */
  19366. /*! export 3255 [provided] [no usage info] [missing usage info prevents renaming] */
  19367. /*! export 3256 [provided] [no usage info] [missing usage info prevents renaming] */
  19368. /*! export 3257 [provided] [no usage info] [missing usage info prevents renaming] */
  19369. /*! export 3258 [provided] [no usage info] [missing usage info prevents renaming] */
  19370. /*! export 3259 [provided] [no usage info] [missing usage info prevents renaming] */
  19371. /*! export 326 [provided] [no usage info] [missing usage info prevents renaming] */
  19372. /*! export 3260 [provided] [no usage info] [missing usage info prevents renaming] */
  19373. /*! export 3261 [provided] [no usage info] [missing usage info prevents renaming] */
  19374. /*! export 3262 [provided] [no usage info] [missing usage info prevents renaming] */
  19375. /*! export 3263 [provided] [no usage info] [missing usage info prevents renaming] */
  19376. /*! export 3264 [provided] [no usage info] [missing usage info prevents renaming] */
  19377. /*! export 3265 [provided] [no usage info] [missing usage info prevents renaming] */
  19378. /*! export 3266 [provided] [no usage info] [missing usage info prevents renaming] */
  19379. /*! export 3267 [provided] [no usage info] [missing usage info prevents renaming] */
  19380. /*! export 3268 [provided] [no usage info] [missing usage info prevents renaming] */
  19381. /*! export 3269 [provided] [no usage info] [missing usage info prevents renaming] */
  19382. /*! export 327 [provided] [no usage info] [missing usage info prevents renaming] */
  19383. /*! export 3270 [provided] [no usage info] [missing usage info prevents renaming] */
  19384. /*! export 3271 [provided] [no usage info] [missing usage info prevents renaming] */
  19385. /*! export 3272 [provided] [no usage info] [missing usage info prevents renaming] */
  19386. /*! export 3273 [provided] [no usage info] [missing usage info prevents renaming] */
  19387. /*! export 3274 [provided] [no usage info] [missing usage info prevents renaming] */
  19388. /*! export 3275 [provided] [no usage info] [missing usage info prevents renaming] */
  19389. /*! export 3276 [provided] [no usage info] [missing usage info prevents renaming] */
  19390. /*! export 3277 [provided] [no usage info] [missing usage info prevents renaming] */
  19391. /*! export 3278 [provided] [no usage info] [missing usage info prevents renaming] */
  19392. /*! export 3279 [provided] [no usage info] [missing usage info prevents renaming] */
  19393. /*! export 328 [provided] [no usage info] [missing usage info prevents renaming] */
  19394. /*! export 3280 [provided] [no usage info] [missing usage info prevents renaming] */
  19395. /*! export 3281 [provided] [no usage info] [missing usage info prevents renaming] */
  19396. /*! export 3282 [provided] [no usage info] [missing usage info prevents renaming] */
  19397. /*! export 3283 [provided] [no usage info] [missing usage info prevents renaming] */
  19398. /*! export 3284 [provided] [no usage info] [missing usage info prevents renaming] */
  19399. /*! export 3285 [provided] [no usage info] [missing usage info prevents renaming] */
  19400. /*! export 3286 [provided] [no usage info] [missing usage info prevents renaming] */
  19401. /*! export 3287 [provided] [no usage info] [missing usage info prevents renaming] */
  19402. /*! export 3288 [provided] [no usage info] [missing usage info prevents renaming] */
  19403. /*! export 3289 [provided] [no usage info] [missing usage info prevents renaming] */
  19404. /*! export 329 [provided] [no usage info] [missing usage info prevents renaming] */
  19405. /*! export 3290 [provided] [no usage info] [missing usage info prevents renaming] */
  19406. /*! export 3291 [provided] [no usage info] [missing usage info prevents renaming] */
  19407. /*! export 3292 [provided] [no usage info] [missing usage info prevents renaming] */
  19408. /*! export 3293 [provided] [no usage info] [missing usage info prevents renaming] */
  19409. /*! export 3294 [provided] [no usage info] [missing usage info prevents renaming] */
  19410. /*! export 3295 [provided] [no usage info] [missing usage info prevents renaming] */
  19411. /*! export 3296 [provided] [no usage info] [missing usage info prevents renaming] */
  19412. /*! export 3297 [provided] [no usage info] [missing usage info prevents renaming] */
  19413. /*! export 3298 [provided] [no usage info] [missing usage info prevents renaming] */
  19414. /*! export 3299 [provided] [no usage info] [missing usage info prevents renaming] */
  19415. /*! export 33 [provided] [no usage info] [missing usage info prevents renaming] */
  19416. /*! export 330 [provided] [no usage info] [missing usage info prevents renaming] */
  19417. /*! export 3300 [provided] [no usage info] [missing usage info prevents renaming] */
  19418. /*! export 3301 [provided] [no usage info] [missing usage info prevents renaming] */
  19419. /*! export 3302 [provided] [no usage info] [missing usage info prevents renaming] */
  19420. /*! export 3303 [provided] [no usage info] [missing usage info prevents renaming] */
  19421. /*! export 3304 [provided] [no usage info] [missing usage info prevents renaming] */
  19422. /*! export 3305 [provided] [no usage info] [missing usage info prevents renaming] */
  19423. /*! export 3306 [provided] [no usage info] [missing usage info prevents renaming] */
  19424. /*! export 3307 [provided] [no usage info] [missing usage info prevents renaming] */
  19425. /*! export 3308 [provided] [no usage info] [missing usage info prevents renaming] */
  19426. /*! export 3309 [provided] [no usage info] [missing usage info prevents renaming] */
  19427. /*! export 331 [provided] [no usage info] [missing usage info prevents renaming] */
  19428. /*! export 3310 [provided] [no usage info] [missing usage info prevents renaming] */
  19429. /*! export 3311 [provided] [no usage info] [missing usage info prevents renaming] */
  19430. /*! export 3312 [provided] [no usage info] [missing usage info prevents renaming] */
  19431. /*! export 3313 [provided] [no usage info] [missing usage info prevents renaming] */
  19432. /*! export 3314 [provided] [no usage info] [missing usage info prevents renaming] */
  19433. /*! export 3315 [provided] [no usage info] [missing usage info prevents renaming] */
  19434. /*! export 3316 [provided] [no usage info] [missing usage info prevents renaming] */
  19435. /*! export 3317 [provided] [no usage info] [missing usage info prevents renaming] */
  19436. /*! export 3318 [provided] [no usage info] [missing usage info prevents renaming] */
  19437. /*! export 3319 [provided] [no usage info] [missing usage info prevents renaming] */
  19438. /*! export 332 [provided] [no usage info] [missing usage info prevents renaming] */
  19439. /*! export 3320 [provided] [no usage info] [missing usage info prevents renaming] */
  19440. /*! export 3321 [provided] [no usage info] [missing usage info prevents renaming] */
  19441. /*! export 3322 [provided] [no usage info] [missing usage info prevents renaming] */
  19442. /*! export 3323 [provided] [no usage info] [missing usage info prevents renaming] */
  19443. /*! export 3324 [provided] [no usage info] [missing usage info prevents renaming] */
  19444. /*! export 3325 [provided] [no usage info] [missing usage info prevents renaming] */
  19445. /*! export 3326 [provided] [no usage info] [missing usage info prevents renaming] */
  19446. /*! export 3327 [provided] [no usage info] [missing usage info prevents renaming] */
  19447. /*! export 3328 [provided] [no usage info] [missing usage info prevents renaming] */
  19448. /*! export 3329 [provided] [no usage info] [missing usage info prevents renaming] */
  19449. /*! export 333 [provided] [no usage info] [missing usage info prevents renaming] */
  19450. /*! export 3330 [provided] [no usage info] [missing usage info prevents renaming] */
  19451. /*! export 3331 [provided] [no usage info] [missing usage info prevents renaming] */
  19452. /*! export 3332 [provided] [no usage info] [missing usage info prevents renaming] */
  19453. /*! export 3333 [provided] [no usage info] [missing usage info prevents renaming] */
  19454. /*! export 3334 [provided] [no usage info] [missing usage info prevents renaming] */
  19455. /*! export 3335 [provided] [no usage info] [missing usage info prevents renaming] */
  19456. /*! export 3336 [provided] [no usage info] [missing usage info prevents renaming] */
  19457. /*! export 3337 [provided] [no usage info] [missing usage info prevents renaming] */
  19458. /*! export 3338 [provided] [no usage info] [missing usage info prevents renaming] */
  19459. /*! export 3339 [provided] [no usage info] [missing usage info prevents renaming] */
  19460. /*! export 334 [provided] [no usage info] [missing usage info prevents renaming] */
  19461. /*! export 3340 [provided] [no usage info] [missing usage info prevents renaming] */
  19462. /*! export 3341 [provided] [no usage info] [missing usage info prevents renaming] */
  19463. /*! export 3342 [provided] [no usage info] [missing usage info prevents renaming] */
  19464. /*! export 3343 [provided] [no usage info] [missing usage info prevents renaming] */
  19465. /*! export 3344 [provided] [no usage info] [missing usage info prevents renaming] */
  19466. /*! export 3345 [provided] [no usage info] [missing usage info prevents renaming] */
  19467. /*! export 3346 [provided] [no usage info] [missing usage info prevents renaming] */
  19468. /*! export 3347 [provided] [no usage info] [missing usage info prevents renaming] */
  19469. /*! export 3348 [provided] [no usage info] [missing usage info prevents renaming] */
  19470. /*! export 3349 [provided] [no usage info] [missing usage info prevents renaming] */
  19471. /*! export 335 [provided] [no usage info] [missing usage info prevents renaming] */
  19472. /*! export 3350 [provided] [no usage info] [missing usage info prevents renaming] */
  19473. /*! export 3351 [provided] [no usage info] [missing usage info prevents renaming] */
  19474. /*! export 3352 [provided] [no usage info] [missing usage info prevents renaming] */
  19475. /*! export 3353 [provided] [no usage info] [missing usage info prevents renaming] */
  19476. /*! export 3354 [provided] [no usage info] [missing usage info prevents renaming] */
  19477. /*! export 3355 [provided] [no usage info] [missing usage info prevents renaming] */
  19478. /*! export 3356 [provided] [no usage info] [missing usage info prevents renaming] */
  19479. /*! export 3357 [provided] [no usage info] [missing usage info prevents renaming] */
  19480. /*! export 3358 [provided] [no usage info] [missing usage info prevents renaming] */
  19481. /*! export 3359 [provided] [no usage info] [missing usage info prevents renaming] */
  19482. /*! export 336 [provided] [no usage info] [missing usage info prevents renaming] */
  19483. /*! export 3360 [provided] [no usage info] [missing usage info prevents renaming] */
  19484. /*! export 3361 [provided] [no usage info] [missing usage info prevents renaming] */
  19485. /*! export 3362 [provided] [no usage info] [missing usage info prevents renaming] */
  19486. /*! export 3363 [provided] [no usage info] [missing usage info prevents renaming] */
  19487. /*! export 3364 [provided] [no usage info] [missing usage info prevents renaming] */
  19488. /*! export 3365 [provided] [no usage info] [missing usage info prevents renaming] */
  19489. /*! export 3366 [provided] [no usage info] [missing usage info prevents renaming] */
  19490. /*! export 3367 [provided] [no usage info] [missing usage info prevents renaming] */
  19491. /*! export 3368 [provided] [no usage info] [missing usage info prevents renaming] */
  19492. /*! export 3369 [provided] [no usage info] [missing usage info prevents renaming] */
  19493. /*! export 337 [provided] [no usage info] [missing usage info prevents renaming] */
  19494. /*! export 3370 [provided] [no usage info] [missing usage info prevents renaming] */
  19495. /*! export 3371 [provided] [no usage info] [missing usage info prevents renaming] */
  19496. /*! export 3372 [provided] [no usage info] [missing usage info prevents renaming] */
  19497. /*! export 3373 [provided] [no usage info] [missing usage info prevents renaming] */
  19498. /*! export 3374 [provided] [no usage info] [missing usage info prevents renaming] */
  19499. /*! export 3375 [provided] [no usage info] [missing usage info prevents renaming] */
  19500. /*! export 3376 [provided] [no usage info] [missing usage info prevents renaming] */
  19501. /*! export 3377 [provided] [no usage info] [missing usage info prevents renaming] */
  19502. /*! export 3378 [provided] [no usage info] [missing usage info prevents renaming] */
  19503. /*! export 3379 [provided] [no usage info] [missing usage info prevents renaming] */
  19504. /*! export 338 [provided] [no usage info] [missing usage info prevents renaming] */
  19505. /*! export 3380 [provided] [no usage info] [missing usage info prevents renaming] */
  19506. /*! export 3381 [provided] [no usage info] [missing usage info prevents renaming] */
  19507. /*! export 3382 [provided] [no usage info] [missing usage info prevents renaming] */
  19508. /*! export 3383 [provided] [no usage info] [missing usage info prevents renaming] */
  19509. /*! export 3384 [provided] [no usage info] [missing usage info prevents renaming] */
  19510. /*! export 3385 [provided] [no usage info] [missing usage info prevents renaming] */
  19511. /*! export 3386 [provided] [no usage info] [missing usage info prevents renaming] */
  19512. /*! export 3387 [provided] [no usage info] [missing usage info prevents renaming] */
  19513. /*! export 3388 [provided] [no usage info] [missing usage info prevents renaming] */
  19514. /*! export 3389 [provided] [no usage info] [missing usage info prevents renaming] */
  19515. /*! export 339 [provided] [no usage info] [missing usage info prevents renaming] */
  19516. /*! export 3390 [provided] [no usage info] [missing usage info prevents renaming] */
  19517. /*! export 3391 [provided] [no usage info] [missing usage info prevents renaming] */
  19518. /*! export 3392 [provided] [no usage info] [missing usage info prevents renaming] */
  19519. /*! export 3393 [provided] [no usage info] [missing usage info prevents renaming] */
  19520. /*! export 3394 [provided] [no usage info] [missing usage info prevents renaming] */
  19521. /*! export 3395 [provided] [no usage info] [missing usage info prevents renaming] */
  19522. /*! export 3396 [provided] [no usage info] [missing usage info prevents renaming] */
  19523. /*! export 3397 [provided] [no usage info] [missing usage info prevents renaming] */
  19524. /*! export 3398 [provided] [no usage info] [missing usage info prevents renaming] */
  19525. /*! export 3399 [provided] [no usage info] [missing usage info prevents renaming] */
  19526. /*! export 34 [provided] [no usage info] [missing usage info prevents renaming] */
  19527. /*! export 340 [provided] [no usage info] [missing usage info prevents renaming] */
  19528. /*! export 3400 [provided] [no usage info] [missing usage info prevents renaming] */
  19529. /*! export 3401 [provided] [no usage info] [missing usage info prevents renaming] */
  19530. /*! export 3402 [provided] [no usage info] [missing usage info prevents renaming] */
  19531. /*! export 3403 [provided] [no usage info] [missing usage info prevents renaming] */
  19532. /*! export 3404 [provided] [no usage info] [missing usage info prevents renaming] */
  19533. /*! export 3405 [provided] [no usage info] [missing usage info prevents renaming] */
  19534. /*! export 3406 [provided] [no usage info] [missing usage info prevents renaming] */
  19535. /*! export 3407 [provided] [no usage info] [missing usage info prevents renaming] */
  19536. /*! export 3408 [provided] [no usage info] [missing usage info prevents renaming] */
  19537. /*! export 3409 [provided] [no usage info] [missing usage info prevents renaming] */
  19538. /*! export 341 [provided] [no usage info] [missing usage info prevents renaming] */
  19539. /*! export 3410 [provided] [no usage info] [missing usage info prevents renaming] */
  19540. /*! export 3411 [provided] [no usage info] [missing usage info prevents renaming] */
  19541. /*! export 3412 [provided] [no usage info] [missing usage info prevents renaming] */
  19542. /*! export 3413 [provided] [no usage info] [missing usage info prevents renaming] */
  19543. /*! export 3414 [provided] [no usage info] [missing usage info prevents renaming] */
  19544. /*! export 3415 [provided] [no usage info] [missing usage info prevents renaming] */
  19545. /*! export 3416 [provided] [no usage info] [missing usage info prevents renaming] */
  19546. /*! export 3417 [provided] [no usage info] [missing usage info prevents renaming] */
  19547. /*! export 3418 [provided] [no usage info] [missing usage info prevents renaming] */
  19548. /*! export 3419 [provided] [no usage info] [missing usage info prevents renaming] */
  19549. /*! export 342 [provided] [no usage info] [missing usage info prevents renaming] */
  19550. /*! export 3420 [provided] [no usage info] [missing usage info prevents renaming] */
  19551. /*! export 3421 [provided] [no usage info] [missing usage info prevents renaming] */
  19552. /*! export 3422 [provided] [no usage info] [missing usage info prevents renaming] */
  19553. /*! export 3423 [provided] [no usage info] [missing usage info prevents renaming] */
  19554. /*! export 3424 [provided] [no usage info] [missing usage info prevents renaming] */
  19555. /*! export 3425 [provided] [no usage info] [missing usage info prevents renaming] */
  19556. /*! export 3426 [provided] [no usage info] [missing usage info prevents renaming] */
  19557. /*! export 3427 [provided] [no usage info] [missing usage info prevents renaming] */
  19558. /*! export 3428 [provided] [no usage info] [missing usage info prevents renaming] */
  19559. /*! export 3429 [provided] [no usage info] [missing usage info prevents renaming] */
  19560. /*! export 343 [provided] [no usage info] [missing usage info prevents renaming] */
  19561. /*! export 3430 [provided] [no usage info] [missing usage info prevents renaming] */
  19562. /*! export 3431 [provided] [no usage info] [missing usage info prevents renaming] */
  19563. /*! export 3432 [provided] [no usage info] [missing usage info prevents renaming] */
  19564. /*! export 3433 [provided] [no usage info] [missing usage info prevents renaming] */
  19565. /*! export 3434 [provided] [no usage info] [missing usage info prevents renaming] */
  19566. /*! export 3435 [provided] [no usage info] [missing usage info prevents renaming] */
  19567. /*! export 3436 [provided] [no usage info] [missing usage info prevents renaming] */
  19568. /*! export 3437 [provided] [no usage info] [missing usage info prevents renaming] */
  19569. /*! export 3438 [provided] [no usage info] [missing usage info prevents renaming] */
  19570. /*! export 3439 [provided] [no usage info] [missing usage info prevents renaming] */
  19571. /*! export 344 [provided] [no usage info] [missing usage info prevents renaming] */
  19572. /*! export 3440 [provided] [no usage info] [missing usage info prevents renaming] */
  19573. /*! export 3441 [provided] [no usage info] [missing usage info prevents renaming] */
  19574. /*! export 3442 [provided] [no usage info] [missing usage info prevents renaming] */
  19575. /*! export 3443 [provided] [no usage info] [missing usage info prevents renaming] */
  19576. /*! export 3444 [provided] [no usage info] [missing usage info prevents renaming] */
  19577. /*! export 3445 [provided] [no usage info] [missing usage info prevents renaming] */
  19578. /*! export 3446 [provided] [no usage info] [missing usage info prevents renaming] */
  19579. /*! export 3447 [provided] [no usage info] [missing usage info prevents renaming] */
  19580. /*! export 3448 [provided] [no usage info] [missing usage info prevents renaming] */
  19581. /*! export 3449 [provided] [no usage info] [missing usage info prevents renaming] */
  19582. /*! export 345 [provided] [no usage info] [missing usage info prevents renaming] */
  19583. /*! export 3450 [provided] [no usage info] [missing usage info prevents renaming] */
  19584. /*! export 3451 [provided] [no usage info] [missing usage info prevents renaming] */
  19585. /*! export 3452 [provided] [no usage info] [missing usage info prevents renaming] */
  19586. /*! export 3453 [provided] [no usage info] [missing usage info prevents renaming] */
  19587. /*! export 3454 [provided] [no usage info] [missing usage info prevents renaming] */
  19588. /*! export 3455 [provided] [no usage info] [missing usage info prevents renaming] */
  19589. /*! export 3456 [provided] [no usage info] [missing usage info prevents renaming] */
  19590. /*! export 3457 [provided] [no usage info] [missing usage info prevents renaming] */
  19591. /*! export 3458 [provided] [no usage info] [missing usage info prevents renaming] */
  19592. /*! export 3459 [provided] [no usage info] [missing usage info prevents renaming] */
  19593. /*! export 346 [provided] [no usage info] [missing usage info prevents renaming] */
  19594. /*! export 3460 [provided] [no usage info] [missing usage info prevents renaming] */
  19595. /*! export 3461 [provided] [no usage info] [missing usage info prevents renaming] */
  19596. /*! export 3462 [provided] [no usage info] [missing usage info prevents renaming] */
  19597. /*! export 3463 [provided] [no usage info] [missing usage info prevents renaming] */
  19598. /*! export 3464 [provided] [no usage info] [missing usage info prevents renaming] */
  19599. /*! export 3465 [provided] [no usage info] [missing usage info prevents renaming] */
  19600. /*! export 3466 [provided] [no usage info] [missing usage info prevents renaming] */
  19601. /*! export 3467 [provided] [no usage info] [missing usage info prevents renaming] */
  19602. /*! export 3468 [provided] [no usage info] [missing usage info prevents renaming] */
  19603. /*! export 3469 [provided] [no usage info] [missing usage info prevents renaming] */
  19604. /*! export 347 [provided] [no usage info] [missing usage info prevents renaming] */
  19605. /*! export 3470 [provided] [no usage info] [missing usage info prevents renaming] */
  19606. /*! export 3471 [provided] [no usage info] [missing usage info prevents renaming] */
  19607. /*! export 3472 [provided] [no usage info] [missing usage info prevents renaming] */
  19608. /*! export 3473 [provided] [no usage info] [missing usage info prevents renaming] */
  19609. /*! export 3474 [provided] [no usage info] [missing usage info prevents renaming] */
  19610. /*! export 3475 [provided] [no usage info] [missing usage info prevents renaming] */
  19611. /*! export 3476 [provided] [no usage info] [missing usage info prevents renaming] */
  19612. /*! export 3477 [provided] [no usage info] [missing usage info prevents renaming] */
  19613. /*! export 3478 [provided] [no usage info] [missing usage info prevents renaming] */
  19614. /*! export 3479 [provided] [no usage info] [missing usage info prevents renaming] */
  19615. /*! export 348 [provided] [no usage info] [missing usage info prevents renaming] */
  19616. /*! export 3480 [provided] [no usage info] [missing usage info prevents renaming] */
  19617. /*! export 3481 [provided] [no usage info] [missing usage info prevents renaming] */
  19618. /*! export 3482 [provided] [no usage info] [missing usage info prevents renaming] */
  19619. /*! export 3483 [provided] [no usage info] [missing usage info prevents renaming] */
  19620. /*! export 3484 [provided] [no usage info] [missing usage info prevents renaming] */
  19621. /*! export 3485 [provided] [no usage info] [missing usage info prevents renaming] */
  19622. /*! export 3486 [provided] [no usage info] [missing usage info prevents renaming] */
  19623. /*! export 3487 [provided] [no usage info] [missing usage info prevents renaming] */
  19624. /*! export 3488 [provided] [no usage info] [missing usage info prevents renaming] */
  19625. /*! export 3489 [provided] [no usage info] [missing usage info prevents renaming] */
  19626. /*! export 349 [provided] [no usage info] [missing usage info prevents renaming] */
  19627. /*! export 3490 [provided] [no usage info] [missing usage info prevents renaming] */
  19628. /*! export 3491 [provided] [no usage info] [missing usage info prevents renaming] */
  19629. /*! export 3492 [provided] [no usage info] [missing usage info prevents renaming] */
  19630. /*! export 3493 [provided] [no usage info] [missing usage info prevents renaming] */
  19631. /*! export 3494 [provided] [no usage info] [missing usage info prevents renaming] */
  19632. /*! export 3495 [provided] [no usage info] [missing usage info prevents renaming] */
  19633. /*! export 3496 [provided] [no usage info] [missing usage info prevents renaming] */
  19634. /*! export 3497 [provided] [no usage info] [missing usage info prevents renaming] */
  19635. /*! export 3498 [provided] [no usage info] [missing usage info prevents renaming] */
  19636. /*! export 3499 [provided] [no usage info] [missing usage info prevents renaming] */
  19637. /*! export 35 [provided] [no usage info] [missing usage info prevents renaming] */
  19638. /*! export 350 [provided] [no usage info] [missing usage info prevents renaming] */
  19639. /*! export 3500 [provided] [no usage info] [missing usage info prevents renaming] */
  19640. /*! export 3501 [provided] [no usage info] [missing usage info prevents renaming] */
  19641. /*! export 3502 [provided] [no usage info] [missing usage info prevents renaming] */
  19642. /*! export 3503 [provided] [no usage info] [missing usage info prevents renaming] */
  19643. /*! export 3504 [provided] [no usage info] [missing usage info prevents renaming] */
  19644. /*! export 3505 [provided] [no usage info] [missing usage info prevents renaming] */
  19645. /*! export 3506 [provided] [no usage info] [missing usage info prevents renaming] */
  19646. /*! export 3507 [provided] [no usage info] [missing usage info prevents renaming] */
  19647. /*! export 3508 [provided] [no usage info] [missing usage info prevents renaming] */
  19648. /*! export 3509 [provided] [no usage info] [missing usage info prevents renaming] */
  19649. /*! export 351 [provided] [no usage info] [missing usage info prevents renaming] */
  19650. /*! export 3510 [provided] [no usage info] [missing usage info prevents renaming] */
  19651. /*! export 3511 [provided] [no usage info] [missing usage info prevents renaming] */
  19652. /*! export 3512 [provided] [no usage info] [missing usage info prevents renaming] */
  19653. /*! export 3513 [provided] [no usage info] [missing usage info prevents renaming] */
  19654. /*! export 3514 [provided] [no usage info] [missing usage info prevents renaming] */
  19655. /*! export 3515 [provided] [no usage info] [missing usage info prevents renaming] */
  19656. /*! export 3516 [provided] [no usage info] [missing usage info prevents renaming] */
  19657. /*! export 3517 [provided] [no usage info] [missing usage info prevents renaming] */
  19658. /*! export 3518 [provided] [no usage info] [missing usage info prevents renaming] */
  19659. /*! export 3519 [provided] [no usage info] [missing usage info prevents renaming] */
  19660. /*! export 352 [provided] [no usage info] [missing usage info prevents renaming] */
  19661. /*! export 3520 [provided] [no usage info] [missing usage info prevents renaming] */
  19662. /*! export 3521 [provided] [no usage info] [missing usage info prevents renaming] */
  19663. /*! export 3522 [provided] [no usage info] [missing usage info prevents renaming] */
  19664. /*! export 3523 [provided] [no usage info] [missing usage info prevents renaming] */
  19665. /*! export 3524 [provided] [no usage info] [missing usage info prevents renaming] */
  19666. /*! export 3525 [provided] [no usage info] [missing usage info prevents renaming] */
  19667. /*! export 3526 [provided] [no usage info] [missing usage info prevents renaming] */
  19668. /*! export 3527 [provided] [no usage info] [missing usage info prevents renaming] */
  19669. /*! export 3528 [provided] [no usage info] [missing usage info prevents renaming] */
  19670. /*! export 3529 [provided] [no usage info] [missing usage info prevents renaming] */
  19671. /*! export 353 [provided] [no usage info] [missing usage info prevents renaming] */
  19672. /*! export 3530 [provided] [no usage info] [missing usage info prevents renaming] */
  19673. /*! export 3531 [provided] [no usage info] [missing usage info prevents renaming] */
  19674. /*! export 3532 [provided] [no usage info] [missing usage info prevents renaming] */
  19675. /*! export 3533 [provided] [no usage info] [missing usage info prevents renaming] */
  19676. /*! export 3534 [provided] [no usage info] [missing usage info prevents renaming] */
  19677. /*! export 3535 [provided] [no usage info] [missing usage info prevents renaming] */
  19678. /*! export 3536 [provided] [no usage info] [missing usage info prevents renaming] */
  19679. /*! export 3537 [provided] [no usage info] [missing usage info prevents renaming] */
  19680. /*! export 3538 [provided] [no usage info] [missing usage info prevents renaming] */
  19681. /*! export 3539 [provided] [no usage info] [missing usage info prevents renaming] */
  19682. /*! export 354 [provided] [no usage info] [missing usage info prevents renaming] */
  19683. /*! export 3540 [provided] [no usage info] [missing usage info prevents renaming] */
  19684. /*! export 3541 [provided] [no usage info] [missing usage info prevents renaming] */
  19685. /*! export 3542 [provided] [no usage info] [missing usage info prevents renaming] */
  19686. /*! export 3543 [provided] [no usage info] [missing usage info prevents renaming] */
  19687. /*! export 3544 [provided] [no usage info] [missing usage info prevents renaming] */
  19688. /*! export 3545 [provided] [no usage info] [missing usage info prevents renaming] */
  19689. /*! export 3546 [provided] [no usage info] [missing usage info prevents renaming] */
  19690. /*! export 3547 [provided] [no usage info] [missing usage info prevents renaming] */
  19691. /*! export 3548 [provided] [no usage info] [missing usage info prevents renaming] */
  19692. /*! export 3549 [provided] [no usage info] [missing usage info prevents renaming] */
  19693. /*! export 355 [provided] [no usage info] [missing usage info prevents renaming] */
  19694. /*! export 3550 [provided] [no usage info] [missing usage info prevents renaming] */
  19695. /*! export 3551 [provided] [no usage info] [missing usage info prevents renaming] */
  19696. /*! export 3552 [provided] [no usage info] [missing usage info prevents renaming] */
  19697. /*! export 3553 [provided] [no usage info] [missing usage info prevents renaming] */
  19698. /*! export 3554 [provided] [no usage info] [missing usage info prevents renaming] */
  19699. /*! export 3555 [provided] [no usage info] [missing usage info prevents renaming] */
  19700. /*! export 3556 [provided] [no usage info] [missing usage info prevents renaming] */
  19701. /*! export 3557 [provided] [no usage info] [missing usage info prevents renaming] */
  19702. /*! export 3558 [provided] [no usage info] [missing usage info prevents renaming] */
  19703. /*! export 3559 [provided] [no usage info] [missing usage info prevents renaming] */
  19704. /*! export 356 [provided] [no usage info] [missing usage info prevents renaming] */
  19705. /*! export 3560 [provided] [no usage info] [missing usage info prevents renaming] */
  19706. /*! export 3561 [provided] [no usage info] [missing usage info prevents renaming] */
  19707. /*! export 3562 [provided] [no usage info] [missing usage info prevents renaming] */
  19708. /*! export 3563 [provided] [no usage info] [missing usage info prevents renaming] */
  19709. /*! export 3564 [provided] [no usage info] [missing usage info prevents renaming] */
  19710. /*! export 3565 [provided] [no usage info] [missing usage info prevents renaming] */
  19711. /*! export 3566 [provided] [no usage info] [missing usage info prevents renaming] */
  19712. /*! export 3567 [provided] [no usage info] [missing usage info prevents renaming] */
  19713. /*! export 3568 [provided] [no usage info] [missing usage info prevents renaming] */
  19714. /*! export 3569 [provided] [no usage info] [missing usage info prevents renaming] */
  19715. /*! export 357 [provided] [no usage info] [missing usage info prevents renaming] */
  19716. /*! export 3570 [provided] [no usage info] [missing usage info prevents renaming] */
  19717. /*! export 3571 [provided] [no usage info] [missing usage info prevents renaming] */
  19718. /*! export 3572 [provided] [no usage info] [missing usage info prevents renaming] */
  19719. /*! export 3573 [provided] [no usage info] [missing usage info prevents renaming] */
  19720. /*! export 3574 [provided] [no usage info] [missing usage info prevents renaming] */
  19721. /*! export 3575 [provided] [no usage info] [missing usage info prevents renaming] */
  19722. /*! export 3576 [provided] [no usage info] [missing usage info prevents renaming] */
  19723. /*! export 3577 [provided] [no usage info] [missing usage info prevents renaming] */
  19724. /*! export 3578 [provided] [no usage info] [missing usage info prevents renaming] */
  19725. /*! export 3579 [provided] [no usage info] [missing usage info prevents renaming] */
  19726. /*! export 358 [provided] [no usage info] [missing usage info prevents renaming] */
  19727. /*! export 3580 [provided] [no usage info] [missing usage info prevents renaming] */
  19728. /*! export 3581 [provided] [no usage info] [missing usage info prevents renaming] */
  19729. /*! export 3582 [provided] [no usage info] [missing usage info prevents renaming] */
  19730. /*! export 3583 [provided] [no usage info] [missing usage info prevents renaming] */
  19731. /*! export 3584 [provided] [no usage info] [missing usage info prevents renaming] */
  19732. /*! export 3585 [provided] [no usage info] [missing usage info prevents renaming] */
  19733. /*! export 3586 [provided] [no usage info] [missing usage info prevents renaming] */
  19734. /*! export 3587 [provided] [no usage info] [missing usage info prevents renaming] */
  19735. /*! export 3588 [provided] [no usage info] [missing usage info prevents renaming] */
  19736. /*! export 3589 [provided] [no usage info] [missing usage info prevents renaming] */
  19737. /*! export 359 [provided] [no usage info] [missing usage info prevents renaming] */
  19738. /*! export 3590 [provided] [no usage info] [missing usage info prevents renaming] */
  19739. /*! export 3591 [provided] [no usage info] [missing usage info prevents renaming] */
  19740. /*! export 3592 [provided] [no usage info] [missing usage info prevents renaming] */
  19741. /*! export 3593 [provided] [no usage info] [missing usage info prevents renaming] */
  19742. /*! export 3594 [provided] [no usage info] [missing usage info prevents renaming] */
  19743. /*! export 3595 [provided] [no usage info] [missing usage info prevents renaming] */
  19744. /*! export 3596 [provided] [no usage info] [missing usage info prevents renaming] */
  19745. /*! export 3597 [provided] [no usage info] [missing usage info prevents renaming] */
  19746. /*! export 3598 [provided] [no usage info] [missing usage info prevents renaming] */
  19747. /*! export 3599 [provided] [no usage info] [missing usage info prevents renaming] */
  19748. /*! export 36 [provided] [no usage info] [missing usage info prevents renaming] */
  19749. /*! export 360 [provided] [no usage info] [missing usage info prevents renaming] */
  19750. /*! export 3600 [provided] [no usage info] [missing usage info prevents renaming] */
  19751. /*! export 3601 [provided] [no usage info] [missing usage info prevents renaming] */
  19752. /*! export 3602 [provided] [no usage info] [missing usage info prevents renaming] */
  19753. /*! export 3603 [provided] [no usage info] [missing usage info prevents renaming] */
  19754. /*! export 3604 [provided] [no usage info] [missing usage info prevents renaming] */
  19755. /*! export 3605 [provided] [no usage info] [missing usage info prevents renaming] */
  19756. /*! export 3606 [provided] [no usage info] [missing usage info prevents renaming] */
  19757. /*! export 3607 [provided] [no usage info] [missing usage info prevents renaming] */
  19758. /*! export 3608 [provided] [no usage info] [missing usage info prevents renaming] */
  19759. /*! export 3609 [provided] [no usage info] [missing usage info prevents renaming] */
  19760. /*! export 361 [provided] [no usage info] [missing usage info prevents renaming] */
  19761. /*! export 3610 [provided] [no usage info] [missing usage info prevents renaming] */
  19762. /*! export 3611 [provided] [no usage info] [missing usage info prevents renaming] */
  19763. /*! export 3612 [provided] [no usage info] [missing usage info prevents renaming] */
  19764. /*! export 3613 [provided] [no usage info] [missing usage info prevents renaming] */
  19765. /*! export 3614 [provided] [no usage info] [missing usage info prevents renaming] */
  19766. /*! export 3615 [provided] [no usage info] [missing usage info prevents renaming] */
  19767. /*! export 3616 [provided] [no usage info] [missing usage info prevents renaming] */
  19768. /*! export 3617 [provided] [no usage info] [missing usage info prevents renaming] */
  19769. /*! export 3618 [provided] [no usage info] [missing usage info prevents renaming] */
  19770. /*! export 3619 [provided] [no usage info] [missing usage info prevents renaming] */
  19771. /*! export 362 [provided] [no usage info] [missing usage info prevents renaming] */
  19772. /*! export 3620 [provided] [no usage info] [missing usage info prevents renaming] */
  19773. /*! export 3621 [provided] [no usage info] [missing usage info prevents renaming] */
  19774. /*! export 3622 [provided] [no usage info] [missing usage info prevents renaming] */
  19775. /*! export 3623 [provided] [no usage info] [missing usage info prevents renaming] */
  19776. /*! export 3624 [provided] [no usage info] [missing usage info prevents renaming] */
  19777. /*! export 3625 [provided] [no usage info] [missing usage info prevents renaming] */
  19778. /*! export 3626 [provided] [no usage info] [missing usage info prevents renaming] */
  19779. /*! export 3627 [provided] [no usage info] [missing usage info prevents renaming] */
  19780. /*! export 3628 [provided] [no usage info] [missing usage info prevents renaming] */
  19781. /*! export 3629 [provided] [no usage info] [missing usage info prevents renaming] */
  19782. /*! export 363 [provided] [no usage info] [missing usage info prevents renaming] */
  19783. /*! export 3630 [provided] [no usage info] [missing usage info prevents renaming] */
  19784. /*! export 3631 [provided] [no usage info] [missing usage info prevents renaming] */
  19785. /*! export 3632 [provided] [no usage info] [missing usage info prevents renaming] */
  19786. /*! export 3633 [provided] [no usage info] [missing usage info prevents renaming] */
  19787. /*! export 3634 [provided] [no usage info] [missing usage info prevents renaming] */
  19788. /*! export 3635 [provided] [no usage info] [missing usage info prevents renaming] */
  19789. /*! export 3636 [provided] [no usage info] [missing usage info prevents renaming] */
  19790. /*! export 3637 [provided] [no usage info] [missing usage info prevents renaming] */
  19791. /*! export 3638 [provided] [no usage info] [missing usage info prevents renaming] */
  19792. /*! export 3639 [provided] [no usage info] [missing usage info prevents renaming] */
  19793. /*! export 364 [provided] [no usage info] [missing usage info prevents renaming] */
  19794. /*! export 3640 [provided] [no usage info] [missing usage info prevents renaming] */
  19795. /*! export 3641 [provided] [no usage info] [missing usage info prevents renaming] */
  19796. /*! export 3642 [provided] [no usage info] [missing usage info prevents renaming] */
  19797. /*! export 3643 [provided] [no usage info] [missing usage info prevents renaming] */
  19798. /*! export 3644 [provided] [no usage info] [missing usage info prevents renaming] */
  19799. /*! export 3645 [provided] [no usage info] [missing usage info prevents renaming] */
  19800. /*! export 3646 [provided] [no usage info] [missing usage info prevents renaming] */
  19801. /*! export 3647 [provided] [no usage info] [missing usage info prevents renaming] */
  19802. /*! export 3648 [provided] [no usage info] [missing usage info prevents renaming] */
  19803. /*! export 3649 [provided] [no usage info] [missing usage info prevents renaming] */
  19804. /*! export 365 [provided] [no usage info] [missing usage info prevents renaming] */
  19805. /*! export 3650 [provided] [no usage info] [missing usage info prevents renaming] */
  19806. /*! export 3651 [provided] [no usage info] [missing usage info prevents renaming] */
  19807. /*! export 3652 [provided] [no usage info] [missing usage info prevents renaming] */
  19808. /*! export 3653 [provided] [no usage info] [missing usage info prevents renaming] */
  19809. /*! export 3654 [provided] [no usage info] [missing usage info prevents renaming] */
  19810. /*! export 3655 [provided] [no usage info] [missing usage info prevents renaming] */
  19811. /*! export 3656 [provided] [no usage info] [missing usage info prevents renaming] */
  19812. /*! export 3657 [provided] [no usage info] [missing usage info prevents renaming] */
  19813. /*! export 3658 [provided] [no usage info] [missing usage info prevents renaming] */
  19814. /*! export 3659 [provided] [no usage info] [missing usage info prevents renaming] */
  19815. /*! export 366 [provided] [no usage info] [missing usage info prevents renaming] */
  19816. /*! export 3660 [provided] [no usage info] [missing usage info prevents renaming] */
  19817. /*! export 3661 [provided] [no usage info] [missing usage info prevents renaming] */
  19818. /*! export 3662 [provided] [no usage info] [missing usage info prevents renaming] */
  19819. /*! export 3663 [provided] [no usage info] [missing usage info prevents renaming] */
  19820. /*! export 3664 [provided] [no usage info] [missing usage info prevents renaming] */
  19821. /*! export 3665 [provided] [no usage info] [missing usage info prevents renaming] */
  19822. /*! export 3666 [provided] [no usage info] [missing usage info prevents renaming] */
  19823. /*! export 3667 [provided] [no usage info] [missing usage info prevents renaming] */
  19824. /*! export 3668 [provided] [no usage info] [missing usage info prevents renaming] */
  19825. /*! export 3669 [provided] [no usage info] [missing usage info prevents renaming] */
  19826. /*! export 367 [provided] [no usage info] [missing usage info prevents renaming] */
  19827. /*! export 3670 [provided] [no usage info] [missing usage info prevents renaming] */
  19828. /*! export 3671 [provided] [no usage info] [missing usage info prevents renaming] */
  19829. /*! export 3672 [provided] [no usage info] [missing usage info prevents renaming] */
  19830. /*! export 3673 [provided] [no usage info] [missing usage info prevents renaming] */
  19831. /*! export 3674 [provided] [no usage info] [missing usage info prevents renaming] */
  19832. /*! export 3675 [provided] [no usage info] [missing usage info prevents renaming] */
  19833. /*! export 3676 [provided] [no usage info] [missing usage info prevents renaming] */
  19834. /*! export 3677 [provided] [no usage info] [missing usage info prevents renaming] */
  19835. /*! export 3678 [provided] [no usage info] [missing usage info prevents renaming] */
  19836. /*! export 3679 [provided] [no usage info] [missing usage info prevents renaming] */
  19837. /*! export 368 [provided] [no usage info] [missing usage info prevents renaming] */
  19838. /*! export 3680 [provided] [no usage info] [missing usage info prevents renaming] */
  19839. /*! export 3681 [provided] [no usage info] [missing usage info prevents renaming] */
  19840. /*! export 3682 [provided] [no usage info] [missing usage info prevents renaming] */
  19841. /*! export 3683 [provided] [no usage info] [missing usage info prevents renaming] */
  19842. /*! export 3684 [provided] [no usage info] [missing usage info prevents renaming] */
  19843. /*! export 3685 [provided] [no usage info] [missing usage info prevents renaming] */
  19844. /*! export 3686 [provided] [no usage info] [missing usage info prevents renaming] */
  19845. /*! export 3687 [provided] [no usage info] [missing usage info prevents renaming] */
  19846. /*! export 3688 [provided] [no usage info] [missing usage info prevents renaming] */
  19847. /*! export 3689 [provided] [no usage info] [missing usage info prevents renaming] */
  19848. /*! export 369 [provided] [no usage info] [missing usage info prevents renaming] */
  19849. /*! export 3690 [provided] [no usage info] [missing usage info prevents renaming] */
  19850. /*! export 3691 [provided] [no usage info] [missing usage info prevents renaming] */
  19851. /*! export 3692 [provided] [no usage info] [missing usage info prevents renaming] */
  19852. /*! export 3693 [provided] [no usage info] [missing usage info prevents renaming] */
  19853. /*! export 3694 [provided] [no usage info] [missing usage info prevents renaming] */
  19854. /*! export 3695 [provided] [no usage info] [missing usage info prevents renaming] */
  19855. /*! export 3696 [provided] [no usage info] [missing usage info prevents renaming] */
  19856. /*! export 3697 [provided] [no usage info] [missing usage info prevents renaming] */
  19857. /*! export 3698 [provided] [no usage info] [missing usage info prevents renaming] */
  19858. /*! export 3699 [provided] [no usage info] [missing usage info prevents renaming] */
  19859. /*! export 37 [provided] [no usage info] [missing usage info prevents renaming] */
  19860. /*! export 370 [provided] [no usage info] [missing usage info prevents renaming] */
  19861. /*! export 3700 [provided] [no usage info] [missing usage info prevents renaming] */
  19862. /*! export 3701 [provided] [no usage info] [missing usage info prevents renaming] */
  19863. /*! export 3702 [provided] [no usage info] [missing usage info prevents renaming] */
  19864. /*! export 3703 [provided] [no usage info] [missing usage info prevents renaming] */
  19865. /*! export 3704 [provided] [no usage info] [missing usage info prevents renaming] */
  19866. /*! export 3705 [provided] [no usage info] [missing usage info prevents renaming] */
  19867. /*! export 3706 [provided] [no usage info] [missing usage info prevents renaming] */
  19868. /*! export 3707 [provided] [no usage info] [missing usage info prevents renaming] */
  19869. /*! export 3708 [provided] [no usage info] [missing usage info prevents renaming] */
  19870. /*! export 3709 [provided] [no usage info] [missing usage info prevents renaming] */
  19871. /*! export 371 [provided] [no usage info] [missing usage info prevents renaming] */
  19872. /*! export 3710 [provided] [no usage info] [missing usage info prevents renaming] */
  19873. /*! export 3711 [provided] [no usage info] [missing usage info prevents renaming] */
  19874. /*! export 3712 [provided] [no usage info] [missing usage info prevents renaming] */
  19875. /*! export 3713 [provided] [no usage info] [missing usage info prevents renaming] */
  19876. /*! export 3714 [provided] [no usage info] [missing usage info prevents renaming] */
  19877. /*! export 3715 [provided] [no usage info] [missing usage info prevents renaming] */
  19878. /*! export 3716 [provided] [no usage info] [missing usage info prevents renaming] */
  19879. /*! export 3717 [provided] [no usage info] [missing usage info prevents renaming] */
  19880. /*! export 3718 [provided] [no usage info] [missing usage info prevents renaming] */
  19881. /*! export 3719 [provided] [no usage info] [missing usage info prevents renaming] */
  19882. /*! export 372 [provided] [no usage info] [missing usage info prevents renaming] */
  19883. /*! export 3720 [provided] [no usage info] [missing usage info prevents renaming] */
  19884. /*! export 3721 [provided] [no usage info] [missing usage info prevents renaming] */
  19885. /*! export 3722 [provided] [no usage info] [missing usage info prevents renaming] */
  19886. /*! export 3723 [provided] [no usage info] [missing usage info prevents renaming] */
  19887. /*! export 3724 [provided] [no usage info] [missing usage info prevents renaming] */
  19888. /*! export 3725 [provided] [no usage info] [missing usage info prevents renaming] */
  19889. /*! export 3726 [provided] [no usage info] [missing usage info prevents renaming] */
  19890. /*! export 3727 [provided] [no usage info] [missing usage info prevents renaming] */
  19891. /*! export 3728 [provided] [no usage info] [missing usage info prevents renaming] */
  19892. /*! export 3729 [provided] [no usage info] [missing usage info prevents renaming] */
  19893. /*! export 373 [provided] [no usage info] [missing usage info prevents renaming] */
  19894. /*! export 3730 [provided] [no usage info] [missing usage info prevents renaming] */
  19895. /*! export 3731 [provided] [no usage info] [missing usage info prevents renaming] */
  19896. /*! export 3732 [provided] [no usage info] [missing usage info prevents renaming] */
  19897. /*! export 3733 [provided] [no usage info] [missing usage info prevents renaming] */
  19898. /*! export 3734 [provided] [no usage info] [missing usage info prevents renaming] */
  19899. /*! export 3735 [provided] [no usage info] [missing usage info prevents renaming] */
  19900. /*! export 3736 [provided] [no usage info] [missing usage info prevents renaming] */
  19901. /*! export 3737 [provided] [no usage info] [missing usage info prevents renaming] */
  19902. /*! export 3738 [provided] [no usage info] [missing usage info prevents renaming] */
  19903. /*! export 3739 [provided] [no usage info] [missing usage info prevents renaming] */
  19904. /*! export 374 [provided] [no usage info] [missing usage info prevents renaming] */
  19905. /*! export 3740 [provided] [no usage info] [missing usage info prevents renaming] */
  19906. /*! export 3741 [provided] [no usage info] [missing usage info prevents renaming] */
  19907. /*! export 3742 [provided] [no usage info] [missing usage info prevents renaming] */
  19908. /*! export 3743 [provided] [no usage info] [missing usage info prevents renaming] */
  19909. /*! export 3744 [provided] [no usage info] [missing usage info prevents renaming] */
  19910. /*! export 3745 [provided] [no usage info] [missing usage info prevents renaming] */
  19911. /*! export 3746 [provided] [no usage info] [missing usage info prevents renaming] */
  19912. /*! export 3747 [provided] [no usage info] [missing usage info prevents renaming] */
  19913. /*! export 3748 [provided] [no usage info] [missing usage info prevents renaming] */
  19914. /*! export 3749 [provided] [no usage info] [missing usage info prevents renaming] */
  19915. /*! export 375 [provided] [no usage info] [missing usage info prevents renaming] */
  19916. /*! export 3750 [provided] [no usage info] [missing usage info prevents renaming] */
  19917. /*! export 3751 [provided] [no usage info] [missing usage info prevents renaming] */
  19918. /*! export 3752 [provided] [no usage info] [missing usage info prevents renaming] */
  19919. /*! export 3753 [provided] [no usage info] [missing usage info prevents renaming] */
  19920. /*! export 3754 [provided] [no usage info] [missing usage info prevents renaming] */
  19921. /*! export 3755 [provided] [no usage info] [missing usage info prevents renaming] */
  19922. /*! export 3756 [provided] [no usage info] [missing usage info prevents renaming] */
  19923. /*! export 3757 [provided] [no usage info] [missing usage info prevents renaming] */
  19924. /*! export 3758 [provided] [no usage info] [missing usage info prevents renaming] */
  19925. /*! export 3759 [provided] [no usage info] [missing usage info prevents renaming] */
  19926. /*! export 376 [provided] [no usage info] [missing usage info prevents renaming] */
  19927. /*! export 3760 [provided] [no usage info] [missing usage info prevents renaming] */
  19928. /*! export 3761 [provided] [no usage info] [missing usage info prevents renaming] */
  19929. /*! export 3762 [provided] [no usage info] [missing usage info prevents renaming] */
  19930. /*! export 3763 [provided] [no usage info] [missing usage info prevents renaming] */
  19931. /*! export 3764 [provided] [no usage info] [missing usage info prevents renaming] */
  19932. /*! export 3765 [provided] [no usage info] [missing usage info prevents renaming] */
  19933. /*! export 3766 [provided] [no usage info] [missing usage info prevents renaming] */
  19934. /*! export 3767 [provided] [no usage info] [missing usage info prevents renaming] */
  19935. /*! export 3768 [provided] [no usage info] [missing usage info prevents renaming] */
  19936. /*! export 3769 [provided] [no usage info] [missing usage info prevents renaming] */
  19937. /*! export 377 [provided] [no usage info] [missing usage info prevents renaming] */
  19938. /*! export 3770 [provided] [no usage info] [missing usage info prevents renaming] */
  19939. /*! export 3771 [provided] [no usage info] [missing usage info prevents renaming] */
  19940. /*! export 3772 [provided] [no usage info] [missing usage info prevents renaming] */
  19941. /*! export 3773 [provided] [no usage info] [missing usage info prevents renaming] */
  19942. /*! export 3774 [provided] [no usage info] [missing usage info prevents renaming] */
  19943. /*! export 3775 [provided] [no usage info] [missing usage info prevents renaming] */
  19944. /*! export 3776 [provided] [no usage info] [missing usage info prevents renaming] */
  19945. /*! export 3777 [provided] [no usage info] [missing usage info prevents renaming] */
  19946. /*! export 3778 [provided] [no usage info] [missing usage info prevents renaming] */
  19947. /*! export 3779 [provided] [no usage info] [missing usage info prevents renaming] */
  19948. /*! export 378 [provided] [no usage info] [missing usage info prevents renaming] */
  19949. /*! export 3780 [provided] [no usage info] [missing usage info prevents renaming] */
  19950. /*! export 3781 [provided] [no usage info] [missing usage info prevents renaming] */
  19951. /*! export 3782 [provided] [no usage info] [missing usage info prevents renaming] */
  19952. /*! export 3783 [provided] [no usage info] [missing usage info prevents renaming] */
  19953. /*! export 3784 [provided] [no usage info] [missing usage info prevents renaming] */
  19954. /*! export 3785 [provided] [no usage info] [missing usage info prevents renaming] */
  19955. /*! export 3786 [provided] [no usage info] [missing usage info prevents renaming] */
  19956. /*! export 3787 [provided] [no usage info] [missing usage info prevents renaming] */
  19957. /*! export 3788 [provided] [no usage info] [missing usage info prevents renaming] */
  19958. /*! export 3789 [provided] [no usage info] [missing usage info prevents renaming] */
  19959. /*! export 379 [provided] [no usage info] [missing usage info prevents renaming] */
  19960. /*! export 3790 [provided] [no usage info] [missing usage info prevents renaming] */
  19961. /*! export 3791 [provided] [no usage info] [missing usage info prevents renaming] */
  19962. /*! export 3792 [provided] [no usage info] [missing usage info prevents renaming] */
  19963. /*! export 3793 [provided] [no usage info] [missing usage info prevents renaming] */
  19964. /*! export 3794 [provided] [no usage info] [missing usage info prevents renaming] */
  19965. /*! export 3795 [provided] [no usage info] [missing usage info prevents renaming] */
  19966. /*! export 3796 [provided] [no usage info] [missing usage info prevents renaming] */
  19967. /*! export 3797 [provided] [no usage info] [missing usage info prevents renaming] */
  19968. /*! export 3798 [provided] [no usage info] [missing usage info prevents renaming] */
  19969. /*! export 3799 [provided] [no usage info] [missing usage info prevents renaming] */
  19970. /*! export 38 [provided] [no usage info] [missing usage info prevents renaming] */
  19971. /*! export 380 [provided] [no usage info] [missing usage info prevents renaming] */
  19972. /*! export 3800 [provided] [no usage info] [missing usage info prevents renaming] */
  19973. /*! export 3801 [provided] [no usage info] [missing usage info prevents renaming] */
  19974. /*! export 3802 [provided] [no usage info] [missing usage info prevents renaming] */
  19975. /*! export 3803 [provided] [no usage info] [missing usage info prevents renaming] */
  19976. /*! export 3804 [provided] [no usage info] [missing usage info prevents renaming] */
  19977. /*! export 3805 [provided] [no usage info] [missing usage info prevents renaming] */
  19978. /*! export 3806 [provided] [no usage info] [missing usage info prevents renaming] */
  19979. /*! export 3807 [provided] [no usage info] [missing usage info prevents renaming] */
  19980. /*! export 3808 [provided] [no usage info] [missing usage info prevents renaming] */
  19981. /*! export 3809 [provided] [no usage info] [missing usage info prevents renaming] */
  19982. /*! export 381 [provided] [no usage info] [missing usage info prevents renaming] */
  19983. /*! export 3810 [provided] [no usage info] [missing usage info prevents renaming] */
  19984. /*! export 3811 [provided] [no usage info] [missing usage info prevents renaming] */
  19985. /*! export 3812 [provided] [no usage info] [missing usage info prevents renaming] */
  19986. /*! export 3813 [provided] [no usage info] [missing usage info prevents renaming] */
  19987. /*! export 3814 [provided] [no usage info] [missing usage info prevents renaming] */
  19988. /*! export 3815 [provided] [no usage info] [missing usage info prevents renaming] */
  19989. /*! export 3816 [provided] [no usage info] [missing usage info prevents renaming] */
  19990. /*! export 3817 [provided] [no usage info] [missing usage info prevents renaming] */
  19991. /*! export 3818 [provided] [no usage info] [missing usage info prevents renaming] */
  19992. /*! export 3819 [provided] [no usage info] [missing usage info prevents renaming] */
  19993. /*! export 382 [provided] [no usage info] [missing usage info prevents renaming] */
  19994. /*! export 3820 [provided] [no usage info] [missing usage info prevents renaming] */
  19995. /*! export 3821 [provided] [no usage info] [missing usage info prevents renaming] */
  19996. /*! export 3822 [provided] [no usage info] [missing usage info prevents renaming] */
  19997. /*! export 3823 [provided] [no usage info] [missing usage info prevents renaming] */
  19998. /*! export 3824 [provided] [no usage info] [missing usage info prevents renaming] */
  19999. /*! export 3825 [provided] [no usage info] [missing usage info prevents renaming] */
  20000. /*! export 3826 [provided] [no usage info] [missing usage info prevents renaming] */
  20001. /*! export 3827 [provided] [no usage info] [missing usage info prevents renaming] */
  20002. /*! export 3828 [provided] [no usage info] [missing usage info prevents renaming] */
  20003. /*! export 3829 [provided] [no usage info] [missing usage info prevents renaming] */
  20004. /*! export 383 [provided] [no usage info] [missing usage info prevents renaming] */
  20005. /*! export 3830 [provided] [no usage info] [missing usage info prevents renaming] */
  20006. /*! export 3831 [provided] [no usage info] [missing usage info prevents renaming] */
  20007. /*! export 3832 [provided] [no usage info] [missing usage info prevents renaming] */
  20008. /*! export 3833 [provided] [no usage info] [missing usage info prevents renaming] */
  20009. /*! export 3834 [provided] [no usage info] [missing usage info prevents renaming] */
  20010. /*! export 3835 [provided] [no usage info] [missing usage info prevents renaming] */
  20011. /*! export 3836 [provided] [no usage info] [missing usage info prevents renaming] */
  20012. /*! export 3837 [provided] [no usage info] [missing usage info prevents renaming] */
  20013. /*! export 3838 [provided] [no usage info] [missing usage info prevents renaming] */
  20014. /*! export 3839 [provided] [no usage info] [missing usage info prevents renaming] */
  20015. /*! export 384 [provided] [no usage info] [missing usage info prevents renaming] */
  20016. /*! export 3840 [provided] [no usage info] [missing usage info prevents renaming] */
  20017. /*! export 3841 [provided] [no usage info] [missing usage info prevents renaming] */
  20018. /*! export 3842 [provided] [no usage info] [missing usage info prevents renaming] */
  20019. /*! export 3843 [provided] [no usage info] [missing usage info prevents renaming] */
  20020. /*! export 3844 [provided] [no usage info] [missing usage info prevents renaming] */
  20021. /*! export 3845 [provided] [no usage info] [missing usage info prevents renaming] */
  20022. /*! export 3846 [provided] [no usage info] [missing usage info prevents renaming] */
  20023. /*! export 3847 [provided] [no usage info] [missing usage info prevents renaming] */
  20024. /*! export 3848 [provided] [no usage info] [missing usage info prevents renaming] */
  20025. /*! export 3849 [provided] [no usage info] [missing usage info prevents renaming] */
  20026. /*! export 385 [provided] [no usage info] [missing usage info prevents renaming] */
  20027. /*! export 3850 [provided] [no usage info] [missing usage info prevents renaming] */
  20028. /*! export 3851 [provided] [no usage info] [missing usage info prevents renaming] */
  20029. /*! export 3852 [provided] [no usage info] [missing usage info prevents renaming] */
  20030. /*! export 3853 [provided] [no usage info] [missing usage info prevents renaming] */
  20031. /*! export 3854 [provided] [no usage info] [missing usage info prevents renaming] */
  20032. /*! export 3855 [provided] [no usage info] [missing usage info prevents renaming] */
  20033. /*! export 3856 [provided] [no usage info] [missing usage info prevents renaming] */
  20034. /*! export 3857 [provided] [no usage info] [missing usage info prevents renaming] */
  20035. /*! export 3858 [provided] [no usage info] [missing usage info prevents renaming] */
  20036. /*! export 3859 [provided] [no usage info] [missing usage info prevents renaming] */
  20037. /*! export 386 [provided] [no usage info] [missing usage info prevents renaming] */
  20038. /*! export 3860 [provided] [no usage info] [missing usage info prevents renaming] */
  20039. /*! export 3861 [provided] [no usage info] [missing usage info prevents renaming] */
  20040. /*! export 3862 [provided] [no usage info] [missing usage info prevents renaming] */
  20041. /*! export 3863 [provided] [no usage info] [missing usage info prevents renaming] */
  20042. /*! export 3864 [provided] [no usage info] [missing usage info prevents renaming] */
  20043. /*! export 3865 [provided] [no usage info] [missing usage info prevents renaming] */
  20044. /*! export 3866 [provided] [no usage info] [missing usage info prevents renaming] */
  20045. /*! export 3867 [provided] [no usage info] [missing usage info prevents renaming] */
  20046. /*! export 3868 [provided] [no usage info] [missing usage info prevents renaming] */
  20047. /*! export 3869 [provided] [no usage info] [missing usage info prevents renaming] */
  20048. /*! export 387 [provided] [no usage info] [missing usage info prevents renaming] */
  20049. /*! export 3870 [provided] [no usage info] [missing usage info prevents renaming] */
  20050. /*! export 3871 [provided] [no usage info] [missing usage info prevents renaming] */
  20051. /*! export 3872 [provided] [no usage info] [missing usage info prevents renaming] */
  20052. /*! export 3873 [provided] [no usage info] [missing usage info prevents renaming] */
  20053. /*! export 3874 [provided] [no usage info] [missing usage info prevents renaming] */
  20054. /*! export 3875 [provided] [no usage info] [missing usage info prevents renaming] */
  20055. /*! export 3876 [provided] [no usage info] [missing usage info prevents renaming] */
  20056. /*! export 3877 [provided] [no usage info] [missing usage info prevents renaming] */
  20057. /*! export 3878 [provided] [no usage info] [missing usage info prevents renaming] */
  20058. /*! export 3879 [provided] [no usage info] [missing usage info prevents renaming] */
  20059. /*! export 388 [provided] [no usage info] [missing usage info prevents renaming] */
  20060. /*! export 3880 [provided] [no usage info] [missing usage info prevents renaming] */
  20061. /*! export 3881 [provided] [no usage info] [missing usage info prevents renaming] */
  20062. /*! export 3882 [provided] [no usage info] [missing usage info prevents renaming] */
  20063. /*! export 3883 [provided] [no usage info] [missing usage info prevents renaming] */
  20064. /*! export 3884 [provided] [no usage info] [missing usage info prevents renaming] */
  20065. /*! export 3885 [provided] [no usage info] [missing usage info prevents renaming] */
  20066. /*! export 3886 [provided] [no usage info] [missing usage info prevents renaming] */
  20067. /*! export 3887 [provided] [no usage info] [missing usage info prevents renaming] */
  20068. /*! export 3888 [provided] [no usage info] [missing usage info prevents renaming] */
  20069. /*! export 3889 [provided] [no usage info] [missing usage info prevents renaming] */
  20070. /*! export 389 [provided] [no usage info] [missing usage info prevents renaming] */
  20071. /*! export 3890 [provided] [no usage info] [missing usage info prevents renaming] */
  20072. /*! export 3891 [provided] [no usage info] [missing usage info prevents renaming] */
  20073. /*! export 3892 [provided] [no usage info] [missing usage info prevents renaming] */
  20074. /*! export 3893 [provided] [no usage info] [missing usage info prevents renaming] */
  20075. /*! export 3894 [provided] [no usage info] [missing usage info prevents renaming] */
  20076. /*! export 3895 [provided] [no usage info] [missing usage info prevents renaming] */
  20077. /*! export 3896 [provided] [no usage info] [missing usage info prevents renaming] */
  20078. /*! export 3897 [provided] [no usage info] [missing usage info prevents renaming] */
  20079. /*! export 3898 [provided] [no usage info] [missing usage info prevents renaming] */
  20080. /*! export 3899 [provided] [no usage info] [missing usage info prevents renaming] */
  20081. /*! export 39 [provided] [no usage info] [missing usage info prevents renaming] */
  20082. /*! export 390 [provided] [no usage info] [missing usage info prevents renaming] */
  20083. /*! export 3900 [provided] [no usage info] [missing usage info prevents renaming] */
  20084. /*! export 3901 [provided] [no usage info] [missing usage info prevents renaming] */
  20085. /*! export 3902 [provided] [no usage info] [missing usage info prevents renaming] */
  20086. /*! export 3903 [provided] [no usage info] [missing usage info prevents renaming] */
  20087. /*! export 3904 [provided] [no usage info] [missing usage info prevents renaming] */
  20088. /*! export 3905 [provided] [no usage info] [missing usage info prevents renaming] */
  20089. /*! export 3906 [provided] [no usage info] [missing usage info prevents renaming] */
  20090. /*! export 3907 [provided] [no usage info] [missing usage info prevents renaming] */
  20091. /*! export 3908 [provided] [no usage info] [missing usage info prevents renaming] */
  20092. /*! export 3909 [provided] [no usage info] [missing usage info prevents renaming] */
  20093. /*! export 391 [provided] [no usage info] [missing usage info prevents renaming] */
  20094. /*! export 3910 [provided] [no usage info] [missing usage info prevents renaming] */
  20095. /*! export 3911 [provided] [no usage info] [missing usage info prevents renaming] */
  20096. /*! export 3912 [provided] [no usage info] [missing usage info prevents renaming] */
  20097. /*! export 3913 [provided] [no usage info] [missing usage info prevents renaming] */
  20098. /*! export 3914 [provided] [no usage info] [missing usage info prevents renaming] */
  20099. /*! export 3915 [provided] [no usage info] [missing usage info prevents renaming] */
  20100. /*! export 3916 [provided] [no usage info] [missing usage info prevents renaming] */
  20101. /*! export 3917 [provided] [no usage info] [missing usage info prevents renaming] */
  20102. /*! export 3918 [provided] [no usage info] [missing usage info prevents renaming] */
  20103. /*! export 3919 [provided] [no usage info] [missing usage info prevents renaming] */
  20104. /*! export 392 [provided] [no usage info] [missing usage info prevents renaming] */
  20105. /*! export 3920 [provided] [no usage info] [missing usage info prevents renaming] */
  20106. /*! export 3921 [provided] [no usage info] [missing usage info prevents renaming] */
  20107. /*! export 3922 [provided] [no usage info] [missing usage info prevents renaming] */
  20108. /*! export 3923 [provided] [no usage info] [missing usage info prevents renaming] */
  20109. /*! export 3924 [provided] [no usage info] [missing usage info prevents renaming] */
  20110. /*! export 3925 [provided] [no usage info] [missing usage info prevents renaming] */
  20111. /*! export 3926 [provided] [no usage info] [missing usage info prevents renaming] */
  20112. /*! export 3927 [provided] [no usage info] [missing usage info prevents renaming] */
  20113. /*! export 3928 [provided] [no usage info] [missing usage info prevents renaming] */
  20114. /*! export 3929 [provided] [no usage info] [missing usage info prevents renaming] */
  20115. /*! export 393 [provided] [no usage info] [missing usage info prevents renaming] */
  20116. /*! export 3930 [provided] [no usage info] [missing usage info prevents renaming] */
  20117. /*! export 3931 [provided] [no usage info] [missing usage info prevents renaming] */
  20118. /*! export 3932 [provided] [no usage info] [missing usage info prevents renaming] */
  20119. /*! export 3933 [provided] [no usage info] [missing usage info prevents renaming] */
  20120. /*! export 3934 [provided] [no usage info] [missing usage info prevents renaming] */
  20121. /*! export 3935 [provided] [no usage info] [missing usage info prevents renaming] */
  20122. /*! export 3936 [provided] [no usage info] [missing usage info prevents renaming] */
  20123. /*! export 3937 [provided] [no usage info] [missing usage info prevents renaming] */
  20124. /*! export 3938 [provided] [no usage info] [missing usage info prevents renaming] */
  20125. /*! export 3939 [provided] [no usage info] [missing usage info prevents renaming] */
  20126. /*! export 394 [provided] [no usage info] [missing usage info prevents renaming] */
  20127. /*! export 3940 [provided] [no usage info] [missing usage info prevents renaming] */
  20128. /*! export 3941 [provided] [no usage info] [missing usage info prevents renaming] */
  20129. /*! export 3942 [provided] [no usage info] [missing usage info prevents renaming] */
  20130. /*! export 3943 [provided] [no usage info] [missing usage info prevents renaming] */
  20131. /*! export 3944 [provided] [no usage info] [missing usage info prevents renaming] */
  20132. /*! export 3945 [provided] [no usage info] [missing usage info prevents renaming] */
  20133. /*! export 3946 [provided] [no usage info] [missing usage info prevents renaming] */
  20134. /*! export 3947 [provided] [no usage info] [missing usage info prevents renaming] */
  20135. /*! export 3948 [provided] [no usage info] [missing usage info prevents renaming] */
  20136. /*! export 3949 [provided] [no usage info] [missing usage info prevents renaming] */
  20137. /*! export 395 [provided] [no usage info] [missing usage info prevents renaming] */
  20138. /*! export 3950 [provided] [no usage info] [missing usage info prevents renaming] */
  20139. /*! export 3951 [provided] [no usage info] [missing usage info prevents renaming] */
  20140. /*! export 3952 [provided] [no usage info] [missing usage info prevents renaming] */
  20141. /*! export 3953 [provided] [no usage info] [missing usage info prevents renaming] */
  20142. /*! export 3954 [provided] [no usage info] [missing usage info prevents renaming] */
  20143. /*! export 3955 [provided] [no usage info] [missing usage info prevents renaming] */
  20144. /*! export 3956 [provided] [no usage info] [missing usage info prevents renaming] */
  20145. /*! export 3957 [provided] [no usage info] [missing usage info prevents renaming] */
  20146. /*! export 3958 [provided] [no usage info] [missing usage info prevents renaming] */
  20147. /*! export 3959 [provided] [no usage info] [missing usage info prevents renaming] */
  20148. /*! export 396 [provided] [no usage info] [missing usage info prevents renaming] */
  20149. /*! export 3960 [provided] [no usage info] [missing usage info prevents renaming] */
  20150. /*! export 3961 [provided] [no usage info] [missing usage info prevents renaming] */
  20151. /*! export 3962 [provided] [no usage info] [missing usage info prevents renaming] */
  20152. /*! export 3963 [provided] [no usage info] [missing usage info prevents renaming] */
  20153. /*! export 3964 [provided] [no usage info] [missing usage info prevents renaming] */
  20154. /*! export 3965 [provided] [no usage info] [missing usage info prevents renaming] */
  20155. /*! export 3966 [provided] [no usage info] [missing usage info prevents renaming] */
  20156. /*! export 3967 [provided] [no usage info] [missing usage info prevents renaming] */
  20157. /*! export 3968 [provided] [no usage info] [missing usage info prevents renaming] */
  20158. /*! export 3969 [provided] [no usage info] [missing usage info prevents renaming] */
  20159. /*! export 397 [provided] [no usage info] [missing usage info prevents renaming] */
  20160. /*! export 3970 [provided] [no usage info] [missing usage info prevents renaming] */
  20161. /*! export 3971 [provided] [no usage info] [missing usage info prevents renaming] */
  20162. /*! export 3972 [provided] [no usage info] [missing usage info prevents renaming] */
  20163. /*! export 3973 [provided] [no usage info] [missing usage info prevents renaming] */
  20164. /*! export 3974 [provided] [no usage info] [missing usage info prevents renaming] */
  20165. /*! export 3975 [provided] [no usage info] [missing usage info prevents renaming] */
  20166. /*! export 3976 [provided] [no usage info] [missing usage info prevents renaming] */
  20167. /*! export 3977 [provided] [no usage info] [missing usage info prevents renaming] */
  20168. /*! export 3978 [provided] [no usage info] [missing usage info prevents renaming] */
  20169. /*! export 3979 [provided] [no usage info] [missing usage info prevents renaming] */
  20170. /*! export 398 [provided] [no usage info] [missing usage info prevents renaming] */
  20171. /*! export 3980 [provided] [no usage info] [missing usage info prevents renaming] */
  20172. /*! export 3981 [provided] [no usage info] [missing usage info prevents renaming] */
  20173. /*! export 3982 [provided] [no usage info] [missing usage info prevents renaming] */
  20174. /*! export 3983 [provided] [no usage info] [missing usage info prevents renaming] */
  20175. /*! export 3984 [provided] [no usage info] [missing usage info prevents renaming] */
  20176. /*! export 3985 [provided] [no usage info] [missing usage info prevents renaming] */
  20177. /*! export 3986 [provided] [no usage info] [missing usage info prevents renaming] */
  20178. /*! export 3987 [provided] [no usage info] [missing usage info prevents renaming] */
  20179. /*! export 3988 [provided] [no usage info] [missing usage info prevents renaming] */
  20180. /*! export 3989 [provided] [no usage info] [missing usage info prevents renaming] */
  20181. /*! export 399 [provided] [no usage info] [missing usage info prevents renaming] */
  20182. /*! export 3990 [provided] [no usage info] [missing usage info prevents renaming] */
  20183. /*! export 3991 [provided] [no usage info] [missing usage info prevents renaming] */
  20184. /*! export 3992 [provided] [no usage info] [missing usage info prevents renaming] */
  20185. /*! export 3993 [provided] [no usage info] [missing usage info prevents renaming] */
  20186. /*! export 3994 [provided] [no usage info] [missing usage info prevents renaming] */
  20187. /*! export 3995 [provided] [no usage info] [missing usage info prevents renaming] */
  20188. /*! export 3996 [provided] [no usage info] [missing usage info prevents renaming] */
  20189. /*! export 3997 [provided] [no usage info] [missing usage info prevents renaming] */
  20190. /*! export 3998 [provided] [no usage info] [missing usage info prevents renaming] */
  20191. /*! export 3999 [provided] [no usage info] [missing usage info prevents renaming] */
  20192. /*! export 4 [provided] [no usage info] [missing usage info prevents renaming] */
  20193. /*! export 40 [provided] [no usage info] [missing usage info prevents renaming] */
  20194. /*! export 400 [provided] [no usage info] [missing usage info prevents renaming] */
  20195. /*! export 4000 [provided] [no usage info] [missing usage info prevents renaming] */
  20196. /*! export 4001 [provided] [no usage info] [missing usage info prevents renaming] */
  20197. /*! export 4002 [provided] [no usage info] [missing usage info prevents renaming] */
  20198. /*! export 4003 [provided] [no usage info] [missing usage info prevents renaming] */
  20199. /*! export 4004 [provided] [no usage info] [missing usage info prevents renaming] */
  20200. /*! export 4005 [provided] [no usage info] [missing usage info prevents renaming] */
  20201. /*! export 4006 [provided] [no usage info] [missing usage info prevents renaming] */
  20202. /*! export 4007 [provided] [no usage info] [missing usage info prevents renaming] */
  20203. /*! export 4008 [provided] [no usage info] [missing usage info prevents renaming] */
  20204. /*! export 4009 [provided] [no usage info] [missing usage info prevents renaming] */
  20205. /*! export 401 [provided] [no usage info] [missing usage info prevents renaming] */
  20206. /*! export 4010 [provided] [no usage info] [missing usage info prevents renaming] */
  20207. /*! export 4011 [provided] [no usage info] [missing usage info prevents renaming] */
  20208. /*! export 4012 [provided] [no usage info] [missing usage info prevents renaming] */
  20209. /*! export 4013 [provided] [no usage info] [missing usage info prevents renaming] */
  20210. /*! export 4014 [provided] [no usage info] [missing usage info prevents renaming] */
  20211. /*! export 4015 [provided] [no usage info] [missing usage info prevents renaming] */
  20212. /*! export 4016 [provided] [no usage info] [missing usage info prevents renaming] */
  20213. /*! export 4017 [provided] [no usage info] [missing usage info prevents renaming] */
  20214. /*! export 4018 [provided] [no usage info] [missing usage info prevents renaming] */
  20215. /*! export 4019 [provided] [no usage info] [missing usage info prevents renaming] */
  20216. /*! export 402 [provided] [no usage info] [missing usage info prevents renaming] */
  20217. /*! export 4020 [provided] [no usage info] [missing usage info prevents renaming] */
  20218. /*! export 4021 [provided] [no usage info] [missing usage info prevents renaming] */
  20219. /*! export 4022 [provided] [no usage info] [missing usage info prevents renaming] */
  20220. /*! export 4023 [provided] [no usage info] [missing usage info prevents renaming] */
  20221. /*! export 4024 [provided] [no usage info] [missing usage info prevents renaming] */
  20222. /*! export 4025 [provided] [no usage info] [missing usage info prevents renaming] */
  20223. /*! export 4026 [provided] [no usage info] [missing usage info prevents renaming] */
  20224. /*! export 4027 [provided] [no usage info] [missing usage info prevents renaming] */
  20225. /*! export 4028 [provided] [no usage info] [missing usage info prevents renaming] */
  20226. /*! export 4029 [provided] [no usage info] [missing usage info prevents renaming] */
  20227. /*! export 403 [provided] [no usage info] [missing usage info prevents renaming] */
  20228. /*! export 4030 [provided] [no usage info] [missing usage info prevents renaming] */
  20229. /*! export 4031 [provided] [no usage info] [missing usage info prevents renaming] */
  20230. /*! export 4032 [provided] [no usage info] [missing usage info prevents renaming] */
  20231. /*! export 4033 [provided] [no usage info] [missing usage info prevents renaming] */
  20232. /*! export 4034 [provided] [no usage info] [missing usage info prevents renaming] */
  20233. /*! export 4035 [provided] [no usage info] [missing usage info prevents renaming] */
  20234. /*! export 4036 [provided] [no usage info] [missing usage info prevents renaming] */
  20235. /*! export 4037 [provided] [no usage info] [missing usage info prevents renaming] */
  20236. /*! export 4038 [provided] [no usage info] [missing usage info prevents renaming] */
  20237. /*! export 4039 [provided] [no usage info] [missing usage info prevents renaming] */
  20238. /*! export 404 [provided] [no usage info] [missing usage info prevents renaming] */
  20239. /*! export 4040 [provided] [no usage info] [missing usage info prevents renaming] */
  20240. /*! export 4041 [provided] [no usage info] [missing usage info prevents renaming] */
  20241. /*! export 4042 [provided] [no usage info] [missing usage info prevents renaming] */
  20242. /*! export 4043 [provided] [no usage info] [missing usage info prevents renaming] */
  20243. /*! export 4044 [provided] [no usage info] [missing usage info prevents renaming] */
  20244. /*! export 4045 [provided] [no usage info] [missing usage info prevents renaming] */
  20245. /*! export 4046 [provided] [no usage info] [missing usage info prevents renaming] */
  20246. /*! export 4047 [provided] [no usage info] [missing usage info prevents renaming] */
  20247. /*! export 4048 [provided] [no usage info] [missing usage info prevents renaming] */
  20248. /*! export 4049 [provided] [no usage info] [missing usage info prevents renaming] */
  20249. /*! export 405 [provided] [no usage info] [missing usage info prevents renaming] */
  20250. /*! export 4050 [provided] [no usage info] [missing usage info prevents renaming] */
  20251. /*! export 4051 [provided] [no usage info] [missing usage info prevents renaming] */
  20252. /*! export 4052 [provided] [no usage info] [missing usage info prevents renaming] */
  20253. /*! export 4053 [provided] [no usage info] [missing usage info prevents renaming] */
  20254. /*! export 4054 [provided] [no usage info] [missing usage info prevents renaming] */
  20255. /*! export 4055 [provided] [no usage info] [missing usage info prevents renaming] */
  20256. /*! export 4056 [provided] [no usage info] [missing usage info prevents renaming] */
  20257. /*! export 4057 [provided] [no usage info] [missing usage info prevents renaming] */
  20258. /*! export 4058 [provided] [no usage info] [missing usage info prevents renaming] */
  20259. /*! export 4059 [provided] [no usage info] [missing usage info prevents renaming] */
  20260. /*! export 406 [provided] [no usage info] [missing usage info prevents renaming] */
  20261. /*! export 4060 [provided] [no usage info] [missing usage info prevents renaming] */
  20262. /*! export 4061 [provided] [no usage info] [missing usage info prevents renaming] */
  20263. /*! export 4062 [provided] [no usage info] [missing usage info prevents renaming] */
  20264. /*! export 4063 [provided] [no usage info] [missing usage info prevents renaming] */
  20265. /*! export 4064 [provided] [no usage info] [missing usage info prevents renaming] */
  20266. /*! export 4065 [provided] [no usage info] [missing usage info prevents renaming] */
  20267. /*! export 4066 [provided] [no usage info] [missing usage info prevents renaming] */
  20268. /*! export 4067 [provided] [no usage info] [missing usage info prevents renaming] */
  20269. /*! export 4068 [provided] [no usage info] [missing usage info prevents renaming] */
  20270. /*! export 4069 [provided] [no usage info] [missing usage info prevents renaming] */
  20271. /*! export 407 [provided] [no usage info] [missing usage info prevents renaming] */
  20272. /*! export 4070 [provided] [no usage info] [missing usage info prevents renaming] */
  20273. /*! export 4071 [provided] [no usage info] [missing usage info prevents renaming] */
  20274. /*! export 4072 [provided] [no usage info] [missing usage info prevents renaming] */
  20275. /*! export 4073 [provided] [no usage info] [missing usage info prevents renaming] */
  20276. /*! export 4074 [provided] [no usage info] [missing usage info prevents renaming] */
  20277. /*! export 4075 [provided] [no usage info] [missing usage info prevents renaming] */
  20278. /*! export 4076 [provided] [no usage info] [missing usage info prevents renaming] */
  20279. /*! export 4077 [provided] [no usage info] [missing usage info prevents renaming] */
  20280. /*! export 4078 [provided] [no usage info] [missing usage info prevents renaming] */
  20281. /*! export 4079 [provided] [no usage info] [missing usage info prevents renaming] */
  20282. /*! export 408 [provided] [no usage info] [missing usage info prevents renaming] */
  20283. /*! export 4080 [provided] [no usage info] [missing usage info prevents renaming] */
  20284. /*! export 4081 [provided] [no usage info] [missing usage info prevents renaming] */
  20285. /*! export 4082 [provided] [no usage info] [missing usage info prevents renaming] */
  20286. /*! export 4083 [provided] [no usage info] [missing usage info prevents renaming] */
  20287. /*! export 4084 [provided] [no usage info] [missing usage info prevents renaming] */
  20288. /*! export 4085 [provided] [no usage info] [missing usage info prevents renaming] */
  20289. /*! export 4086 [provided] [no usage info] [missing usage info prevents renaming] */
  20290. /*! export 4087 [provided] [no usage info] [missing usage info prevents renaming] */
  20291. /*! export 4088 [provided] [no usage info] [missing usage info prevents renaming] */
  20292. /*! export 4089 [provided] [no usage info] [missing usage info prevents renaming] */
  20293. /*! export 409 [provided] [no usage info] [missing usage info prevents renaming] */
  20294. /*! export 4090 [provided] [no usage info] [missing usage info prevents renaming] */
  20295. /*! export 4091 [provided] [no usage info] [missing usage info prevents renaming] */
  20296. /*! export 4092 [provided] [no usage info] [missing usage info prevents renaming] */
  20297. /*! export 4093 [provided] [no usage info] [missing usage info prevents renaming] */
  20298. /*! export 4094 [provided] [no usage info] [missing usage info prevents renaming] */
  20299. /*! export 4095 [provided] [no usage info] [missing usage info prevents renaming] */
  20300. /*! export 4096 [provided] [no usage info] [missing usage info prevents renaming] */
  20301. /*! export 4097 [provided] [no usage info] [missing usage info prevents renaming] */
  20302. /*! export 4098 [provided] [no usage info] [missing usage info prevents renaming] */
  20303. /*! export 4099 [provided] [no usage info] [missing usage info prevents renaming] */
  20304. /*! export 41 [provided] [no usage info] [missing usage info prevents renaming] */
  20305. /*! export 410 [provided] [no usage info] [missing usage info prevents renaming] */
  20306. /*! export 4100 [provided] [no usage info] [missing usage info prevents renaming] */
  20307. /*! export 4101 [provided] [no usage info] [missing usage info prevents renaming] */
  20308. /*! export 4102 [provided] [no usage info] [missing usage info prevents renaming] */
  20309. /*! export 4103 [provided] [no usage info] [missing usage info prevents renaming] */
  20310. /*! export 4104 [provided] [no usage info] [missing usage info prevents renaming] */
  20311. /*! export 4105 [provided] [no usage info] [missing usage info prevents renaming] */
  20312. /*! export 4106 [provided] [no usage info] [missing usage info prevents renaming] */
  20313. /*! export 4107 [provided] [no usage info] [missing usage info prevents renaming] */
  20314. /*! export 4108 [provided] [no usage info] [missing usage info prevents renaming] */
  20315. /*! export 4109 [provided] [no usage info] [missing usage info prevents renaming] */
  20316. /*! export 411 [provided] [no usage info] [missing usage info prevents renaming] */
  20317. /*! export 4110 [provided] [no usage info] [missing usage info prevents renaming] */
  20318. /*! export 4111 [provided] [no usage info] [missing usage info prevents renaming] */
  20319. /*! export 4112 [provided] [no usage info] [missing usage info prevents renaming] */
  20320. /*! export 4113 [provided] [no usage info] [missing usage info prevents renaming] */
  20321. /*! export 4114 [provided] [no usage info] [missing usage info prevents renaming] */
  20322. /*! export 4115 [provided] [no usage info] [missing usage info prevents renaming] */
  20323. /*! export 4116 [provided] [no usage info] [missing usage info prevents renaming] */
  20324. /*! export 4117 [provided] [no usage info] [missing usage info prevents renaming] */
  20325. /*! export 4118 [provided] [no usage info] [missing usage info prevents renaming] */
  20326. /*! export 4119 [provided] [no usage info] [missing usage info prevents renaming] */
  20327. /*! export 412 [provided] [no usage info] [missing usage info prevents renaming] */
  20328. /*! export 4120 [provided] [no usage info] [missing usage info prevents renaming] */
  20329. /*! export 4121 [provided] [no usage info] [missing usage info prevents renaming] */
  20330. /*! export 4122 [provided] [no usage info] [missing usage info prevents renaming] */
  20331. /*! export 4123 [provided] [no usage info] [missing usage info prevents renaming] */
  20332. /*! export 4124 [provided] [no usage info] [missing usage info prevents renaming] */
  20333. /*! export 4125 [provided] [no usage info] [missing usage info prevents renaming] */
  20334. /*! export 4126 [provided] [no usage info] [missing usage info prevents renaming] */
  20335. /*! export 4127 [provided] [no usage info] [missing usage info prevents renaming] */
  20336. /*! export 4128 [provided] [no usage info] [missing usage info prevents renaming] */
  20337. /*! export 4129 [provided] [no usage info] [missing usage info prevents renaming] */
  20338. /*! export 413 [provided] [no usage info] [missing usage info prevents renaming] */
  20339. /*! export 4130 [provided] [no usage info] [missing usage info prevents renaming] */
  20340. /*! export 4131 [provided] [no usage info] [missing usage info prevents renaming] */
  20341. /*! export 4132 [provided] [no usage info] [missing usage info prevents renaming] */
  20342. /*! export 4133 [provided] [no usage info] [missing usage info prevents renaming] */
  20343. /*! export 4134 [provided] [no usage info] [missing usage info prevents renaming] */
  20344. /*! export 4135 [provided] [no usage info] [missing usage info prevents renaming] */
  20345. /*! export 4136 [provided] [no usage info] [missing usage info prevents renaming] */
  20346. /*! export 4137 [provided] [no usage info] [missing usage info prevents renaming] */
  20347. /*! export 4138 [provided] [no usage info] [missing usage info prevents renaming] */
  20348. /*! export 4139 [provided] [no usage info] [missing usage info prevents renaming] */
  20349. /*! export 414 [provided] [no usage info] [missing usage info prevents renaming] */
  20350. /*! export 4140 [provided] [no usage info] [missing usage info prevents renaming] */
  20351. /*! export 4141 [provided] [no usage info] [missing usage info prevents renaming] */
  20352. /*! export 4142 [provided] [no usage info] [missing usage info prevents renaming] */
  20353. /*! export 4143 [provided] [no usage info] [missing usage info prevents renaming] */
  20354. /*! export 4144 [provided] [no usage info] [missing usage info prevents renaming] */
  20355. /*! export 4145 [provided] [no usage info] [missing usage info prevents renaming] */
  20356. /*! export 4146 [provided] [no usage info] [missing usage info prevents renaming] */
  20357. /*! export 4147 [provided] [no usage info] [missing usage info prevents renaming] */
  20358. /*! export 4148 [provided] [no usage info] [missing usage info prevents renaming] */
  20359. /*! export 4149 [provided] [no usage info] [missing usage info prevents renaming] */
  20360. /*! export 415 [provided] [no usage info] [missing usage info prevents renaming] */
  20361. /*! export 4150 [provided] [no usage info] [missing usage info prevents renaming] */
  20362. /*! export 4151 [provided] [no usage info] [missing usage info prevents renaming] */
  20363. /*! export 4152 [provided] [no usage info] [missing usage info prevents renaming] */
  20364. /*! export 4153 [provided] [no usage info] [missing usage info prevents renaming] */
  20365. /*! export 4154 [provided] [no usage info] [missing usage info prevents renaming] */
  20366. /*! export 4155 [provided] [no usage info] [missing usage info prevents renaming] */
  20367. /*! export 4156 [provided] [no usage info] [missing usage info prevents renaming] */
  20368. /*! export 4157 [provided] [no usage info] [missing usage info prevents renaming] */
  20369. /*! export 4158 [provided] [no usage info] [missing usage info prevents renaming] */
  20370. /*! export 4159 [provided] [no usage info] [missing usage info prevents renaming] */
  20371. /*! export 416 [provided] [no usage info] [missing usage info prevents renaming] */
  20372. /*! export 4160 [provided] [no usage info] [missing usage info prevents renaming] */
  20373. /*! export 4161 [provided] [no usage info] [missing usage info prevents renaming] */
  20374. /*! export 4162 [provided] [no usage info] [missing usage info prevents renaming] */
  20375. /*! export 4163 [provided] [no usage info] [missing usage info prevents renaming] */
  20376. /*! export 4164 [provided] [no usage info] [missing usage info prevents renaming] */
  20377. /*! export 4165 [provided] [no usage info] [missing usage info prevents renaming] */
  20378. /*! export 4166 [provided] [no usage info] [missing usage info prevents renaming] */
  20379. /*! export 4167 [provided] [no usage info] [missing usage info prevents renaming] */
  20380. /*! export 4168 [provided] [no usage info] [missing usage info prevents renaming] */
  20381. /*! export 4169 [provided] [no usage info] [missing usage info prevents renaming] */
  20382. /*! export 417 [provided] [no usage info] [missing usage info prevents renaming] */
  20383. /*! export 4170 [provided] [no usage info] [missing usage info prevents renaming] */
  20384. /*! export 4171 [provided] [no usage info] [missing usage info prevents renaming] */
  20385. /*! export 4172 [provided] [no usage info] [missing usage info prevents renaming] */
  20386. /*! export 4173 [provided] [no usage info] [missing usage info prevents renaming] */
  20387. /*! export 4174 [provided] [no usage info] [missing usage info prevents renaming] */
  20388. /*! export 4175 [provided] [no usage info] [missing usage info prevents renaming] */
  20389. /*! export 4176 [provided] [no usage info] [missing usage info prevents renaming] */
  20390. /*! export 4177 [provided] [no usage info] [missing usage info prevents renaming] */
  20391. /*! export 4178 [provided] [no usage info] [missing usage info prevents renaming] */
  20392. /*! export 4179 [provided] [no usage info] [missing usage info prevents renaming] */
  20393. /*! export 418 [provided] [no usage info] [missing usage info prevents renaming] */
  20394. /*! export 4180 [provided] [no usage info] [missing usage info prevents renaming] */
  20395. /*! export 4181 [provided] [no usage info] [missing usage info prevents renaming] */
  20396. /*! export 4182 [provided] [no usage info] [missing usage info prevents renaming] */
  20397. /*! export 4183 [provided] [no usage info] [missing usage info prevents renaming] */
  20398. /*! export 4184 [provided] [no usage info] [missing usage info prevents renaming] */
  20399. /*! export 4185 [provided] [no usage info] [missing usage info prevents renaming] */
  20400. /*! export 4186 [provided] [no usage info] [missing usage info prevents renaming] */
  20401. /*! export 4187 [provided] [no usage info] [missing usage info prevents renaming] */
  20402. /*! export 4188 [provided] [no usage info] [missing usage info prevents renaming] */
  20403. /*! export 4189 [provided] [no usage info] [missing usage info prevents renaming] */
  20404. /*! export 419 [provided] [no usage info] [missing usage info prevents renaming] */
  20405. /*! export 4190 [provided] [no usage info] [missing usage info prevents renaming] */
  20406. /*! export 4191 [provided] [no usage info] [missing usage info prevents renaming] */
  20407. /*! export 4192 [provided] [no usage info] [missing usage info prevents renaming] */
  20408. /*! export 4193 [provided] [no usage info] [missing usage info prevents renaming] */
  20409. /*! export 4194 [provided] [no usage info] [missing usage info prevents renaming] */
  20410. /*! export 4195 [provided] [no usage info] [missing usage info prevents renaming] */
  20411. /*! export 4196 [provided] [no usage info] [missing usage info prevents renaming] */
  20412. /*! export 4197 [provided] [no usage info] [missing usage info prevents renaming] */
  20413. /*! export 4198 [provided] [no usage info] [missing usage info prevents renaming] */
  20414. /*! export 4199 [provided] [no usage info] [missing usage info prevents renaming] */
  20415. /*! export 42 [provided] [no usage info] [missing usage info prevents renaming] */
  20416. /*! export 420 [provided] [no usage info] [missing usage info prevents renaming] */
  20417. /*! export 4200 [provided] [no usage info] [missing usage info prevents renaming] */
  20418. /*! export 4201 [provided] [no usage info] [missing usage info prevents renaming] */
  20419. /*! export 4202 [provided] [no usage info] [missing usage info prevents renaming] */
  20420. /*! export 4203 [provided] [no usage info] [missing usage info prevents renaming] */
  20421. /*! export 4204 [provided] [no usage info] [missing usage info prevents renaming] */
  20422. /*! export 4205 [provided] [no usage info] [missing usage info prevents renaming] */
  20423. /*! export 4206 [provided] [no usage info] [missing usage info prevents renaming] */
  20424. /*! export 4207 [provided] [no usage info] [missing usage info prevents renaming] */
  20425. /*! export 4208 [provided] [no usage info] [missing usage info prevents renaming] */
  20426. /*! export 4209 [provided] [no usage info] [missing usage info prevents renaming] */
  20427. /*! export 421 [provided] [no usage info] [missing usage info prevents renaming] */
  20428. /*! export 4210 [provided] [no usage info] [missing usage info prevents renaming] */
  20429. /*! export 4211 [provided] [no usage info] [missing usage info prevents renaming] */
  20430. /*! export 4212 [provided] [no usage info] [missing usage info prevents renaming] */
  20431. /*! export 4213 [provided] [no usage info] [missing usage info prevents renaming] */
  20432. /*! export 4214 [provided] [no usage info] [missing usage info prevents renaming] */
  20433. /*! export 4215 [provided] [no usage info] [missing usage info prevents renaming] */
  20434. /*! export 4216 [provided] [no usage info] [missing usage info prevents renaming] */
  20435. /*! export 4217 [provided] [no usage info] [missing usage info prevents renaming] */
  20436. /*! export 4218 [provided] [no usage info] [missing usage info prevents renaming] */
  20437. /*! export 4219 [provided] [no usage info] [missing usage info prevents renaming] */
  20438. /*! export 422 [provided] [no usage info] [missing usage info prevents renaming] */
  20439. /*! export 4220 [provided] [no usage info] [missing usage info prevents renaming] */
  20440. /*! export 4221 [provided] [no usage info] [missing usage info prevents renaming] */
  20441. /*! export 4222 [provided] [no usage info] [missing usage info prevents renaming] */
  20442. /*! export 4223 [provided] [no usage info] [missing usage info prevents renaming] */
  20443. /*! export 4224 [provided] [no usage info] [missing usage info prevents renaming] */
  20444. /*! export 4225 [provided] [no usage info] [missing usage info prevents renaming] */
  20445. /*! export 4226 [provided] [no usage info] [missing usage info prevents renaming] */
  20446. /*! export 4227 [provided] [no usage info] [missing usage info prevents renaming] */
  20447. /*! export 4228 [provided] [no usage info] [missing usage info prevents renaming] */
  20448. /*! export 4229 [provided] [no usage info] [missing usage info prevents renaming] */
  20449. /*! export 423 [provided] [no usage info] [missing usage info prevents renaming] */
  20450. /*! export 4230 [provided] [no usage info] [missing usage info prevents renaming] */
  20451. /*! export 4231 [provided] [no usage info] [missing usage info prevents renaming] */
  20452. /*! export 4232 [provided] [no usage info] [missing usage info prevents renaming] */
  20453. /*! export 4233 [provided] [no usage info] [missing usage info prevents renaming] */
  20454. /*! export 4234 [provided] [no usage info] [missing usage info prevents renaming] */
  20455. /*! export 4235 [provided] [no usage info] [missing usage info prevents renaming] */
  20456. /*! export 4236 [provided] [no usage info] [missing usage info prevents renaming] */
  20457. /*! export 4237 [provided] [no usage info] [missing usage info prevents renaming] */
  20458. /*! export 4238 [provided] [no usage info] [missing usage info prevents renaming] */
  20459. /*! export 4239 [provided] [no usage info] [missing usage info prevents renaming] */
  20460. /*! export 424 [provided] [no usage info] [missing usage info prevents renaming] */
  20461. /*! export 4240 [provided] [no usage info] [missing usage info prevents renaming] */
  20462. /*! export 4241 [provided] [no usage info] [missing usage info prevents renaming] */
  20463. /*! export 4242 [provided] [no usage info] [missing usage info prevents renaming] */
  20464. /*! export 4243 [provided] [no usage info] [missing usage info prevents renaming] */
  20465. /*! export 4244 [provided] [no usage info] [missing usage info prevents renaming] */
  20466. /*! export 4245 [provided] [no usage info] [missing usage info prevents renaming] */
  20467. /*! export 4246 [provided] [no usage info] [missing usage info prevents renaming] */
  20468. /*! export 4247 [provided] [no usage info] [missing usage info prevents renaming] */
  20469. /*! export 4248 [provided] [no usage info] [missing usage info prevents renaming] */
  20470. /*! export 4249 [provided] [no usage info] [missing usage info prevents renaming] */
  20471. /*! export 425 [provided] [no usage info] [missing usage info prevents renaming] */
  20472. /*! export 4250 [provided] [no usage info] [missing usage info prevents renaming] */
  20473. /*! export 4251 [provided] [no usage info] [missing usage info prevents renaming] */
  20474. /*! export 4252 [provided] [no usage info] [missing usage info prevents renaming] */
  20475. /*! export 4253 [provided] [no usage info] [missing usage info prevents renaming] */
  20476. /*! export 4254 [provided] [no usage info] [missing usage info prevents renaming] */
  20477. /*! export 4255 [provided] [no usage info] [missing usage info prevents renaming] */
  20478. /*! export 4256 [provided] [no usage info] [missing usage info prevents renaming] */
  20479. /*! export 4257 [provided] [no usage info] [missing usage info prevents renaming] */
  20480. /*! export 4258 [provided] [no usage info] [missing usage info prevents renaming] */
  20481. /*! export 4259 [provided] [no usage info] [missing usage info prevents renaming] */
  20482. /*! export 426 [provided] [no usage info] [missing usage info prevents renaming] */
  20483. /*! export 4260 [provided] [no usage info] [missing usage info prevents renaming] */
  20484. /*! export 4261 [provided] [no usage info] [missing usage info prevents renaming] */
  20485. /*! export 4262 [provided] [no usage info] [missing usage info prevents renaming] */
  20486. /*! export 4263 [provided] [no usage info] [missing usage info prevents renaming] */
  20487. /*! export 4264 [provided] [no usage info] [missing usage info prevents renaming] */
  20488. /*! export 4265 [provided] [no usage info] [missing usage info prevents renaming] */
  20489. /*! export 4266 [provided] [no usage info] [missing usage info prevents renaming] */
  20490. /*! export 4267 [provided] [no usage info] [missing usage info prevents renaming] */
  20491. /*! export 4268 [provided] [no usage info] [missing usage info prevents renaming] */
  20492. /*! export 4269 [provided] [no usage info] [missing usage info prevents renaming] */
  20493. /*! export 427 [provided] [no usage info] [missing usage info prevents renaming] */
  20494. /*! export 4270 [provided] [no usage info] [missing usage info prevents renaming] */
  20495. /*! export 4271 [provided] [no usage info] [missing usage info prevents renaming] */
  20496. /*! export 4272 [provided] [no usage info] [missing usage info prevents renaming] */
  20497. /*! export 4273 [provided] [no usage info] [missing usage info prevents renaming] */
  20498. /*! export 4274 [provided] [no usage info] [missing usage info prevents renaming] */
  20499. /*! export 4275 [provided] [no usage info] [missing usage info prevents renaming] */
  20500. /*! export 4276 [provided] [no usage info] [missing usage info prevents renaming] */
  20501. /*! export 4277 [provided] [no usage info] [missing usage info prevents renaming] */
  20502. /*! export 4278 [provided] [no usage info] [missing usage info prevents renaming] */
  20503. /*! export 4279 [provided] [no usage info] [missing usage info prevents renaming] */
  20504. /*! export 428 [provided] [no usage info] [missing usage info prevents renaming] */
  20505. /*! export 4280 [provided] [no usage info] [missing usage info prevents renaming] */
  20506. /*! export 4281 [provided] [no usage info] [missing usage info prevents renaming] */
  20507. /*! export 4282 [provided] [no usage info] [missing usage info prevents renaming] */
  20508. /*! export 4283 [provided] [no usage info] [missing usage info prevents renaming] */
  20509. /*! export 4284 [provided] [no usage info] [missing usage info prevents renaming] */
  20510. /*! export 4285 [provided] [no usage info] [missing usage info prevents renaming] */
  20511. /*! export 4286 [provided] [no usage info] [missing usage info prevents renaming] */
  20512. /*! export 4287 [provided] [no usage info] [missing usage info prevents renaming] */
  20513. /*! export 4288 [provided] [no usage info] [missing usage info prevents renaming] */
  20514. /*! export 4289 [provided] [no usage info] [missing usage info prevents renaming] */
  20515. /*! export 429 [provided] [no usage info] [missing usage info prevents renaming] */
  20516. /*! export 4290 [provided] [no usage info] [missing usage info prevents renaming] */
  20517. /*! export 4291 [provided] [no usage info] [missing usage info prevents renaming] */
  20518. /*! export 4292 [provided] [no usage info] [missing usage info prevents renaming] */
  20519. /*! export 4293 [provided] [no usage info] [missing usage info prevents renaming] */
  20520. /*! export 4294 [provided] [no usage info] [missing usage info prevents renaming] */
  20521. /*! export 4295 [provided] [no usage info] [missing usage info prevents renaming] */
  20522. /*! export 4296 [provided] [no usage info] [missing usage info prevents renaming] */
  20523. /*! export 4297 [provided] [no usage info] [missing usage info prevents renaming] */
  20524. /*! export 4298 [provided] [no usage info] [missing usage info prevents renaming] */
  20525. /*! export 4299 [provided] [no usage info] [missing usage info prevents renaming] */
  20526. /*! export 43 [provided] [no usage info] [missing usage info prevents renaming] */
  20527. /*! export 430 [provided] [no usage info] [missing usage info prevents renaming] */
  20528. /*! export 4300 [provided] [no usage info] [missing usage info prevents renaming] */
  20529. /*! export 4301 [provided] [no usage info] [missing usage info prevents renaming] */
  20530. /*! export 4302 [provided] [no usage info] [missing usage info prevents renaming] */
  20531. /*! export 4303 [provided] [no usage info] [missing usage info prevents renaming] */
  20532. /*! export 4304 [provided] [no usage info] [missing usage info prevents renaming] */
  20533. /*! export 4305 [provided] [no usage info] [missing usage info prevents renaming] */
  20534. /*! export 4306 [provided] [no usage info] [missing usage info prevents renaming] */
  20535. /*! export 4307 [provided] [no usage info] [missing usage info prevents renaming] */
  20536. /*! export 4308 [provided] [no usage info] [missing usage info prevents renaming] */
  20537. /*! export 4309 [provided] [no usage info] [missing usage info prevents renaming] */
  20538. /*! export 431 [provided] [no usage info] [missing usage info prevents renaming] */
  20539. /*! export 4310 [provided] [no usage info] [missing usage info prevents renaming] */
  20540. /*! export 4311 [provided] [no usage info] [missing usage info prevents renaming] */
  20541. /*! export 4312 [provided] [no usage info] [missing usage info prevents renaming] */
  20542. /*! export 4313 [provided] [no usage info] [missing usage info prevents renaming] */
  20543. /*! export 4314 [provided] [no usage info] [missing usage info prevents renaming] */
  20544. /*! export 4315 [provided] [no usage info] [missing usage info prevents renaming] */
  20545. /*! export 4316 [provided] [no usage info] [missing usage info prevents renaming] */
  20546. /*! export 4317 [provided] [no usage info] [missing usage info prevents renaming] */
  20547. /*! export 4318 [provided] [no usage info] [missing usage info prevents renaming] */
  20548. /*! export 4319 [provided] [no usage info] [missing usage info prevents renaming] */
  20549. /*! export 432 [provided] [no usage info] [missing usage info prevents renaming] */
  20550. /*! export 4320 [provided] [no usage info] [missing usage info prevents renaming] */
  20551. /*! export 4321 [provided] [no usage info] [missing usage info prevents renaming] */
  20552. /*! export 4322 [provided] [no usage info] [missing usage info prevents renaming] */
  20553. /*! export 4323 [provided] [no usage info] [missing usage info prevents renaming] */
  20554. /*! export 4324 [provided] [no usage info] [missing usage info prevents renaming] */
  20555. /*! export 4325 [provided] [no usage info] [missing usage info prevents renaming] */
  20556. /*! export 4326 [provided] [no usage info] [missing usage info prevents renaming] */
  20557. /*! export 4327 [provided] [no usage info] [missing usage info prevents renaming] */
  20558. /*! export 4328 [provided] [no usage info] [missing usage info prevents renaming] */
  20559. /*! export 4329 [provided] [no usage info] [missing usage info prevents renaming] */
  20560. /*! export 433 [provided] [no usage info] [missing usage info prevents renaming] */
  20561. /*! export 4330 [provided] [no usage info] [missing usage info prevents renaming] */
  20562. /*! export 4331 [provided] [no usage info] [missing usage info prevents renaming] */
  20563. /*! export 4332 [provided] [no usage info] [missing usage info prevents renaming] */
  20564. /*! export 4333 [provided] [no usage info] [missing usage info prevents renaming] */
  20565. /*! export 4334 [provided] [no usage info] [missing usage info prevents renaming] */
  20566. /*! export 4335 [provided] [no usage info] [missing usage info prevents renaming] */
  20567. /*! export 4336 [provided] [no usage info] [missing usage info prevents renaming] */
  20568. /*! export 4337 [provided] [no usage info] [missing usage info prevents renaming] */
  20569. /*! export 4338 [provided] [no usage info] [missing usage info prevents renaming] */
  20570. /*! export 4339 [provided] [no usage info] [missing usage info prevents renaming] */
  20571. /*! export 434 [provided] [no usage info] [missing usage info prevents renaming] */
  20572. /*! export 4340 [provided] [no usage info] [missing usage info prevents renaming] */
  20573. /*! export 4341 [provided] [no usage info] [missing usage info prevents renaming] */
  20574. /*! export 4342 [provided] [no usage info] [missing usage info prevents renaming] */
  20575. /*! export 4343 [provided] [no usage info] [missing usage info prevents renaming] */
  20576. /*! export 4344 [provided] [no usage info] [missing usage info prevents renaming] */
  20577. /*! export 4345 [provided] [no usage info] [missing usage info prevents renaming] */
  20578. /*! export 4346 [provided] [no usage info] [missing usage info prevents renaming] */
  20579. /*! export 4347 [provided] [no usage info] [missing usage info prevents renaming] */
  20580. /*! export 4348 [provided] [no usage info] [missing usage info prevents renaming] */
  20581. /*! export 4349 [provided] [no usage info] [missing usage info prevents renaming] */
  20582. /*! export 435 [provided] [no usage info] [missing usage info prevents renaming] */
  20583. /*! export 4350 [provided] [no usage info] [missing usage info prevents renaming] */
  20584. /*! export 4351 [provided] [no usage info] [missing usage info prevents renaming] */
  20585. /*! export 4352 [provided] [no usage info] [missing usage info prevents renaming] */
  20586. /*! export 4353 [provided] [no usage info] [missing usage info prevents renaming] */
  20587. /*! export 4354 [provided] [no usage info] [missing usage info prevents renaming] */
  20588. /*! export 4355 [provided] [no usage info] [missing usage info prevents renaming] */
  20589. /*! export 4356 [provided] [no usage info] [missing usage info prevents renaming] */
  20590. /*! export 4357 [provided] [no usage info] [missing usage info prevents renaming] */
  20591. /*! export 4358 [provided] [no usage info] [missing usage info prevents renaming] */
  20592. /*! export 4359 [provided] [no usage info] [missing usage info prevents renaming] */
  20593. /*! export 436 [provided] [no usage info] [missing usage info prevents renaming] */
  20594. /*! export 4360 [provided] [no usage info] [missing usage info prevents renaming] */
  20595. /*! export 4361 [provided] [no usage info] [missing usage info prevents renaming] */
  20596. /*! export 4362 [provided] [no usage info] [missing usage info prevents renaming] */
  20597. /*! export 4363 [provided] [no usage info] [missing usage info prevents renaming] */
  20598. /*! export 4364 [provided] [no usage info] [missing usage info prevents renaming] */
  20599. /*! export 4365 [provided] [no usage info] [missing usage info prevents renaming] */
  20600. /*! export 4366 [provided] [no usage info] [missing usage info prevents renaming] */
  20601. /*! export 4367 [provided] [no usage info] [missing usage info prevents renaming] */
  20602. /*! export 4368 [provided] [no usage info] [missing usage info prevents renaming] */
  20603. /*! export 4369 [provided] [no usage info] [missing usage info prevents renaming] */
  20604. /*! export 437 [provided] [no usage info] [missing usage info prevents renaming] */
  20605. /*! export 4370 [provided] [no usage info] [missing usage info prevents renaming] */
  20606. /*! export 4371 [provided] [no usage info] [missing usage info prevents renaming] */
  20607. /*! export 4372 [provided] [no usage info] [missing usage info prevents renaming] */
  20608. /*! export 4373 [provided] [no usage info] [missing usage info prevents renaming] */
  20609. /*! export 4374 [provided] [no usage info] [missing usage info prevents renaming] */
  20610. /*! export 4375 [provided] [no usage info] [missing usage info prevents renaming] */
  20611. /*! export 4376 [provided] [no usage info] [missing usage info prevents renaming] */
  20612. /*! export 4377 [provided] [no usage info] [missing usage info prevents renaming] */
  20613. /*! export 4378 [provided] [no usage info] [missing usage info prevents renaming] */
  20614. /*! export 4379 [provided] [no usage info] [missing usage info prevents renaming] */
  20615. /*! export 438 [provided] [no usage info] [missing usage info prevents renaming] */
  20616. /*! export 4380 [provided] [no usage info] [missing usage info prevents renaming] */
  20617. /*! export 4381 [provided] [no usage info] [missing usage info prevents renaming] */
  20618. /*! export 4382 [provided] [no usage info] [missing usage info prevents renaming] */
  20619. /*! export 4383 [provided] [no usage info] [missing usage info prevents renaming] */
  20620. /*! export 4384 [provided] [no usage info] [missing usage info prevents renaming] */
  20621. /*! export 4385 [provided] [no usage info] [missing usage info prevents renaming] */
  20622. /*! export 4386 [provided] [no usage info] [missing usage info prevents renaming] */
  20623. /*! export 4387 [provided] [no usage info] [missing usage info prevents renaming] */
  20624. /*! export 4388 [provided] [no usage info] [missing usage info prevents renaming] */
  20625. /*! export 4389 [provided] [no usage info] [missing usage info prevents renaming] */
  20626. /*! export 439 [provided] [no usage info] [missing usage info prevents renaming] */
  20627. /*! export 4390 [provided] [no usage info] [missing usage info prevents renaming] */
  20628. /*! export 4391 [provided] [no usage info] [missing usage info prevents renaming] */
  20629. /*! export 4392 [provided] [no usage info] [missing usage info prevents renaming] */
  20630. /*! export 4393 [provided] [no usage info] [missing usage info prevents renaming] */
  20631. /*! export 4394 [provided] [no usage info] [missing usage info prevents renaming] */
  20632. /*! export 4395 [provided] [no usage info] [missing usage info prevents renaming] */
  20633. /*! export 4396 [provided] [no usage info] [missing usage info prevents renaming] */
  20634. /*! export 4397 [provided] [no usage info] [missing usage info prevents renaming] */
  20635. /*! export 4398 [provided] [no usage info] [missing usage info prevents renaming] */
  20636. /*! export 4399 [provided] [no usage info] [missing usage info prevents renaming] */
  20637. /*! export 44 [provided] [no usage info] [missing usage info prevents renaming] */
  20638. /*! export 440 [provided] [no usage info] [missing usage info prevents renaming] */
  20639. /*! export 4400 [provided] [no usage info] [missing usage info prevents renaming] */
  20640. /*! export 4401 [provided] [no usage info] [missing usage info prevents renaming] */
  20641. /*! export 4402 [provided] [no usage info] [missing usage info prevents renaming] */
  20642. /*! export 4403 [provided] [no usage info] [missing usage info prevents renaming] */
  20643. /*! export 4404 [provided] [no usage info] [missing usage info prevents renaming] */
  20644. /*! export 4405 [provided] [no usage info] [missing usage info prevents renaming] */
  20645. /*! export 4406 [provided] [no usage info] [missing usage info prevents renaming] */
  20646. /*! export 4407 [provided] [no usage info] [missing usage info prevents renaming] */
  20647. /*! export 4408 [provided] [no usage info] [missing usage info prevents renaming] */
  20648. /*! export 4409 [provided] [no usage info] [missing usage info prevents renaming] */
  20649. /*! export 441 [provided] [no usage info] [missing usage info prevents renaming] */
  20650. /*! export 4410 [provided] [no usage info] [missing usage info prevents renaming] */
  20651. /*! export 4411 [provided] [no usage info] [missing usage info prevents renaming] */
  20652. /*! export 4412 [provided] [no usage info] [missing usage info prevents renaming] */
  20653. /*! export 4413 [provided] [no usage info] [missing usage info prevents renaming] */
  20654. /*! export 4414 [provided] [no usage info] [missing usage info prevents renaming] */
  20655. /*! export 4415 [provided] [no usage info] [missing usage info prevents renaming] */
  20656. /*! export 4416 [provided] [no usage info] [missing usage info prevents renaming] */
  20657. /*! export 4417 [provided] [no usage info] [missing usage info prevents renaming] */
  20658. /*! export 4418 [provided] [no usage info] [missing usage info prevents renaming] */
  20659. /*! export 4419 [provided] [no usage info] [missing usage info prevents renaming] */
  20660. /*! export 442 [provided] [no usage info] [missing usage info prevents renaming] */
  20661. /*! export 4420 [provided] [no usage info] [missing usage info prevents renaming] */
  20662. /*! export 4421 [provided] [no usage info] [missing usage info prevents renaming] */
  20663. /*! export 4422 [provided] [no usage info] [missing usage info prevents renaming] */
  20664. /*! export 4423 [provided] [no usage info] [missing usage info prevents renaming] */
  20665. /*! export 4424 [provided] [no usage info] [missing usage info prevents renaming] */
  20666. /*! export 4425 [provided] [no usage info] [missing usage info prevents renaming] */
  20667. /*! export 4426 [provided] [no usage info] [missing usage info prevents renaming] */
  20668. /*! export 4427 [provided] [no usage info] [missing usage info prevents renaming] */
  20669. /*! export 4428 [provided] [no usage info] [missing usage info prevents renaming] */
  20670. /*! export 4429 [provided] [no usage info] [missing usage info prevents renaming] */
  20671. /*! export 443 [provided] [no usage info] [missing usage info prevents renaming] */
  20672. /*! export 4430 [provided] [no usage info] [missing usage info prevents renaming] */
  20673. /*! export 4431 [provided] [no usage info] [missing usage info prevents renaming] */
  20674. /*! export 4432 [provided] [no usage info] [missing usage info prevents renaming] */
  20675. /*! export 4433 [provided] [no usage info] [missing usage info prevents renaming] */
  20676. /*! export 4434 [provided] [no usage info] [missing usage info prevents renaming] */
  20677. /*! export 4435 [provided] [no usage info] [missing usage info prevents renaming] */
  20678. /*! export 4436 [provided] [no usage info] [missing usage info prevents renaming] */
  20679. /*! export 4437 [provided] [no usage info] [missing usage info prevents renaming] */
  20680. /*! export 4438 [provided] [no usage info] [missing usage info prevents renaming] */
  20681. /*! export 4439 [provided] [no usage info] [missing usage info prevents renaming] */
  20682. /*! export 444 [provided] [no usage info] [missing usage info prevents renaming] */
  20683. /*! export 4440 [provided] [no usage info] [missing usage info prevents renaming] */
  20684. /*! export 4441 [provided] [no usage info] [missing usage info prevents renaming] */
  20685. /*! export 4442 [provided] [no usage info] [missing usage info prevents renaming] */
  20686. /*! export 4443 [provided] [no usage info] [missing usage info prevents renaming] */
  20687. /*! export 4444 [provided] [no usage info] [missing usage info prevents renaming] */
  20688. /*! export 4445 [provided] [no usage info] [missing usage info prevents renaming] */
  20689. /*! export 4446 [provided] [no usage info] [missing usage info prevents renaming] */
  20690. /*! export 4447 [provided] [no usage info] [missing usage info prevents renaming] */
  20691. /*! export 4448 [provided] [no usage info] [missing usage info prevents renaming] */
  20692. /*! export 4449 [provided] [no usage info] [missing usage info prevents renaming] */
  20693. /*! export 445 [provided] [no usage info] [missing usage info prevents renaming] */
  20694. /*! export 4450 [provided] [no usage info] [missing usage info prevents renaming] */
  20695. /*! export 4451 [provided] [no usage info] [missing usage info prevents renaming] */
  20696. /*! export 4452 [provided] [no usage info] [missing usage info prevents renaming] */
  20697. /*! export 4453 [provided] [no usage info] [missing usage info prevents renaming] */
  20698. /*! export 4454 [provided] [no usage info] [missing usage info prevents renaming] */
  20699. /*! export 4455 [provided] [no usage info] [missing usage info prevents renaming] */
  20700. /*! export 4456 [provided] [no usage info] [missing usage info prevents renaming] */
  20701. /*! export 4457 [provided] [no usage info] [missing usage info prevents renaming] */
  20702. /*! export 4458 [provided] [no usage info] [missing usage info prevents renaming] */
  20703. /*! export 4459 [provided] [no usage info] [missing usage info prevents renaming] */
  20704. /*! export 446 [provided] [no usage info] [missing usage info prevents renaming] */
  20705. /*! export 4460 [provided] [no usage info] [missing usage info prevents renaming] */
  20706. /*! export 4461 [provided] [no usage info] [missing usage info prevents renaming] */
  20707. /*! export 4462 [provided] [no usage info] [missing usage info prevents renaming] */
  20708. /*! export 4463 [provided] [no usage info] [missing usage info prevents renaming] */
  20709. /*! export 4464 [provided] [no usage info] [missing usage info prevents renaming] */
  20710. /*! export 4465 [provided] [no usage info] [missing usage info prevents renaming] */
  20711. /*! export 4466 [provided] [no usage info] [missing usage info prevents renaming] */
  20712. /*! export 4467 [provided] [no usage info] [missing usage info prevents renaming] */
  20713. /*! export 4468 [provided] [no usage info] [missing usage info prevents renaming] */
  20714. /*! export 4469 [provided] [no usage info] [missing usage info prevents renaming] */
  20715. /*! export 447 [provided] [no usage info] [missing usage info prevents renaming] */
  20716. /*! export 4470 [provided] [no usage info] [missing usage info prevents renaming] */
  20717. /*! export 4471 [provided] [no usage info] [missing usage info prevents renaming] */
  20718. /*! export 4472 [provided] [no usage info] [missing usage info prevents renaming] */
  20719. /*! export 4473 [provided] [no usage info] [missing usage info prevents renaming] */
  20720. /*! export 4474 [provided] [no usage info] [missing usage info prevents renaming] */
  20721. /*! export 4475 [provided] [no usage info] [missing usage info prevents renaming] */
  20722. /*! export 4476 [provided] [no usage info] [missing usage info prevents renaming] */
  20723. /*! export 4477 [provided] [no usage info] [missing usage info prevents renaming] */
  20724. /*! export 4478 [provided] [no usage info] [missing usage info prevents renaming] */
  20725. /*! export 4479 [provided] [no usage info] [missing usage info prevents renaming] */
  20726. /*! export 448 [provided] [no usage info] [missing usage info prevents renaming] */
  20727. /*! export 4480 [provided] [no usage info] [missing usage info prevents renaming] */
  20728. /*! export 4481 [provided] [no usage info] [missing usage info prevents renaming] */
  20729. /*! export 4482 [provided] [no usage info] [missing usage info prevents renaming] */
  20730. /*! export 4483 [provided] [no usage info] [missing usage info prevents renaming] */
  20731. /*! export 4484 [provided] [no usage info] [missing usage info prevents renaming] */
  20732. /*! export 4485 [provided] [no usage info] [missing usage info prevents renaming] */
  20733. /*! export 4486 [provided] [no usage info] [missing usage info prevents renaming] */
  20734. /*! export 4487 [provided] [no usage info] [missing usage info prevents renaming] */
  20735. /*! export 4488 [provided] [no usage info] [missing usage info prevents renaming] */
  20736. /*! export 4489 [provided] [no usage info] [missing usage info prevents renaming] */
  20737. /*! export 449 [provided] [no usage info] [missing usage info prevents renaming] */
  20738. /*! export 4490 [provided] [no usage info] [missing usage info prevents renaming] */
  20739. /*! export 4491 [provided] [no usage info] [missing usage info prevents renaming] */
  20740. /*! export 4492 [provided] [no usage info] [missing usage info prevents renaming] */
  20741. /*! export 4493 [provided] [no usage info] [missing usage info prevents renaming] */
  20742. /*! export 4494 [provided] [no usage info] [missing usage info prevents renaming] */
  20743. /*! export 4495 [provided] [no usage info] [missing usage info prevents renaming] */
  20744. /*! export 4496 [provided] [no usage info] [missing usage info prevents renaming] */
  20745. /*! export 4497 [provided] [no usage info] [missing usage info prevents renaming] */
  20746. /*! export 4498 [provided] [no usage info] [missing usage info prevents renaming] */
  20747. /*! export 4499 [provided] [no usage info] [missing usage info prevents renaming] */
  20748. /*! export 45 [provided] [no usage info] [missing usage info prevents renaming] */
  20749. /*! export 450 [provided] [no usage info] [missing usage info prevents renaming] */
  20750. /*! export 4500 [provided] [no usage info] [missing usage info prevents renaming] */
  20751. /*! export 4501 [provided] [no usage info] [missing usage info prevents renaming] */
  20752. /*! export 4502 [provided] [no usage info] [missing usage info prevents renaming] */
  20753. /*! export 4503 [provided] [no usage info] [missing usage info prevents renaming] */
  20754. /*! export 4504 [provided] [no usage info] [missing usage info prevents renaming] */
  20755. /*! export 4505 [provided] [no usage info] [missing usage info prevents renaming] */
  20756. /*! export 4506 [provided] [no usage info] [missing usage info prevents renaming] */
  20757. /*! export 4507 [provided] [no usage info] [missing usage info prevents renaming] */
  20758. /*! export 4508 [provided] [no usage info] [missing usage info prevents renaming] */
  20759. /*! export 4509 [provided] [no usage info] [missing usage info prevents renaming] */
  20760. /*! export 451 [provided] [no usage info] [missing usage info prevents renaming] */
  20761. /*! export 4510 [provided] [no usage info] [missing usage info prevents renaming] */
  20762. /*! export 4511 [provided] [no usage info] [missing usage info prevents renaming] */
  20763. /*! export 4512 [provided] [no usage info] [missing usage info prevents renaming] */
  20764. /*! export 4513 [provided] [no usage info] [missing usage info prevents renaming] */
  20765. /*! export 4514 [provided] [no usage info] [missing usage info prevents renaming] */
  20766. /*! export 4515 [provided] [no usage info] [missing usage info prevents renaming] */
  20767. /*! export 4516 [provided] [no usage info] [missing usage info prevents renaming] */
  20768. /*! export 4517 [provided] [no usage info] [missing usage info prevents renaming] */
  20769. /*! export 4518 [provided] [no usage info] [missing usage info prevents renaming] */
  20770. /*! export 4519 [provided] [no usage info] [missing usage info prevents renaming] */
  20771. /*! export 452 [provided] [no usage info] [missing usage info prevents renaming] */
  20772. /*! export 4520 [provided] [no usage info] [missing usage info prevents renaming] */
  20773. /*! export 4521 [provided] [no usage info] [missing usage info prevents renaming] */
  20774. /*! export 4522 [provided] [no usage info] [missing usage info prevents renaming] */
  20775. /*! export 4523 [provided] [no usage info] [missing usage info prevents renaming] */
  20776. /*! export 4524 [provided] [no usage info] [missing usage info prevents renaming] */
  20777. /*! export 4525 [provided] [no usage info] [missing usage info prevents renaming] */
  20778. /*! export 4526 [provided] [no usage info] [missing usage info prevents renaming] */
  20779. /*! export 4527 [provided] [no usage info] [missing usage info prevents renaming] */
  20780. /*! export 4528 [provided] [no usage info] [missing usage info prevents renaming] */
  20781. /*! export 4529 [provided] [no usage info] [missing usage info prevents renaming] */
  20782. /*! export 453 [provided] [no usage info] [missing usage info prevents renaming] */
  20783. /*! export 4530 [provided] [no usage info] [missing usage info prevents renaming] */
  20784. /*! export 4531 [provided] [no usage info] [missing usage info prevents renaming] */
  20785. /*! export 4532 [provided] [no usage info] [missing usage info prevents renaming] */
  20786. /*! export 4533 [provided] [no usage info] [missing usage info prevents renaming] */
  20787. /*! export 4534 [provided] [no usage info] [missing usage info prevents renaming] */
  20788. /*! export 4535 [provided] [no usage info] [missing usage info prevents renaming] */
  20789. /*! export 4536 [provided] [no usage info] [missing usage info prevents renaming] */
  20790. /*! export 4537 [provided] [no usage info] [missing usage info prevents renaming] */
  20791. /*! export 4538 [provided] [no usage info] [missing usage info prevents renaming] */
  20792. /*! export 4539 [provided] [no usage info] [missing usage info prevents renaming] */
  20793. /*! export 454 [provided] [no usage info] [missing usage info prevents renaming] */
  20794. /*! export 4540 [provided] [no usage info] [missing usage info prevents renaming] */
  20795. /*! export 4541 [provided] [no usage info] [missing usage info prevents renaming] */
  20796. /*! export 4542 [provided] [no usage info] [missing usage info prevents renaming] */
  20797. /*! export 4543 [provided] [no usage info] [missing usage info prevents renaming] */
  20798. /*! export 4544 [provided] [no usage info] [missing usage info prevents renaming] */
  20799. /*! export 4545 [provided] [no usage info] [missing usage info prevents renaming] */
  20800. /*! export 4546 [provided] [no usage info] [missing usage info prevents renaming] */
  20801. /*! export 4547 [provided] [no usage info] [missing usage info prevents renaming] */
  20802. /*! export 4548 [provided] [no usage info] [missing usage info prevents renaming] */
  20803. /*! export 4549 [provided] [no usage info] [missing usage info prevents renaming] */
  20804. /*! export 455 [provided] [no usage info] [missing usage info prevents renaming] */
  20805. /*! export 4550 [provided] [no usage info] [missing usage info prevents renaming] */
  20806. /*! export 4551 [provided] [no usage info] [missing usage info prevents renaming] */
  20807. /*! export 4552 [provided] [no usage info] [missing usage info prevents renaming] */
  20808. /*! export 4553 [provided] [no usage info] [missing usage info prevents renaming] */
  20809. /*! export 4554 [provided] [no usage info] [missing usage info prevents renaming] */
  20810. /*! export 4555 [provided] [no usage info] [missing usage info prevents renaming] */
  20811. /*! export 4556 [provided] [no usage info] [missing usage info prevents renaming] */
  20812. /*! export 4557 [provided] [no usage info] [missing usage info prevents renaming] */
  20813. /*! export 4558 [provided] [no usage info] [missing usage info prevents renaming] */
  20814. /*! export 4559 [provided] [no usage info] [missing usage info prevents renaming] */
  20815. /*! export 456 [provided] [no usage info] [missing usage info prevents renaming] */
  20816. /*! export 4560 [provided] [no usage info] [missing usage info prevents renaming] */
  20817. /*! export 4561 [provided] [no usage info] [missing usage info prevents renaming] */
  20818. /*! export 4562 [provided] [no usage info] [missing usage info prevents renaming] */
  20819. /*! export 4563 [provided] [no usage info] [missing usage info prevents renaming] */
  20820. /*! export 4564 [provided] [no usage info] [missing usage info prevents renaming] */
  20821. /*! export 4565 [provided] [no usage info] [missing usage info prevents renaming] */
  20822. /*! export 4566 [provided] [no usage info] [missing usage info prevents renaming] */
  20823. /*! export 4567 [provided] [no usage info] [missing usage info prevents renaming] */
  20824. /*! export 4568 [provided] [no usage info] [missing usage info prevents renaming] */
  20825. /*! export 4569 [provided] [no usage info] [missing usage info prevents renaming] */
  20826. /*! export 457 [provided] [no usage info] [missing usage info prevents renaming] */
  20827. /*! export 4570 [provided] [no usage info] [missing usage info prevents renaming] */
  20828. /*! export 4571 [provided] [no usage info] [missing usage info prevents renaming] */
  20829. /*! export 4572 [provided] [no usage info] [missing usage info prevents renaming] */
  20830. /*! export 4573 [provided] [no usage info] [missing usage info prevents renaming] */
  20831. /*! export 4574 [provided] [no usage info] [missing usage info prevents renaming] */
  20832. /*! export 4575 [provided] [no usage info] [missing usage info prevents renaming] */
  20833. /*! export 4576 [provided] [no usage info] [missing usage info prevents renaming] */
  20834. /*! export 4577 [provided] [no usage info] [missing usage info prevents renaming] */
  20835. /*! export 4578 [provided] [no usage info] [missing usage info prevents renaming] */
  20836. /*! export 4579 [provided] [no usage info] [missing usage info prevents renaming] */
  20837. /*! export 458 [provided] [no usage info] [missing usage info prevents renaming] */
  20838. /*! export 4580 [provided] [no usage info] [missing usage info prevents renaming] */
  20839. /*! export 4581 [provided] [no usage info] [missing usage info prevents renaming] */
  20840. /*! export 4582 [provided] [no usage info] [missing usage info prevents renaming] */
  20841. /*! export 4583 [provided] [no usage info] [missing usage info prevents renaming] */
  20842. /*! export 4584 [provided] [no usage info] [missing usage info prevents renaming] */
  20843. /*! export 4585 [provided] [no usage info] [missing usage info prevents renaming] */
  20844. /*! export 4586 [provided] [no usage info] [missing usage info prevents renaming] */
  20845. /*! export 4587 [provided] [no usage info] [missing usage info prevents renaming] */
  20846. /*! export 4588 [provided] [no usage info] [missing usage info prevents renaming] */
  20847. /*! export 4589 [provided] [no usage info] [missing usage info prevents renaming] */
  20848. /*! export 459 [provided] [no usage info] [missing usage info prevents renaming] */
  20849. /*! export 4590 [provided] [no usage info] [missing usage info prevents renaming] */
  20850. /*! export 4591 [provided] [no usage info] [missing usage info prevents renaming] */
  20851. /*! export 4592 [provided] [no usage info] [missing usage info prevents renaming] */
  20852. /*! export 4593 [provided] [no usage info] [missing usage info prevents renaming] */
  20853. /*! export 4594 [provided] [no usage info] [missing usage info prevents renaming] */
  20854. /*! export 4595 [provided] [no usage info] [missing usage info prevents renaming] */
  20855. /*! export 4596 [provided] [no usage info] [missing usage info prevents renaming] */
  20856. /*! export 4597 [provided] [no usage info] [missing usage info prevents renaming] */
  20857. /*! export 4598 [provided] [no usage info] [missing usage info prevents renaming] */
  20858. /*! export 4599 [provided] [no usage info] [missing usage info prevents renaming] */
  20859. /*! export 46 [provided] [no usage info] [missing usage info prevents renaming] */
  20860. /*! export 460 [provided] [no usage info] [missing usage info prevents renaming] */
  20861. /*! export 4600 [provided] [no usage info] [missing usage info prevents renaming] */
  20862. /*! export 4601 [provided] [no usage info] [missing usage info prevents renaming] */
  20863. /*! export 4602 [provided] [no usage info] [missing usage info prevents renaming] */
  20864. /*! export 4603 [provided] [no usage info] [missing usage info prevents renaming] */
  20865. /*! export 4604 [provided] [no usage info] [missing usage info prevents renaming] */
  20866. /*! export 4605 [provided] [no usage info] [missing usage info prevents renaming] */
  20867. /*! export 4606 [provided] [no usage info] [missing usage info prevents renaming] */
  20868. /*! export 4607 [provided] [no usage info] [missing usage info prevents renaming] */
  20869. /*! export 4608 [provided] [no usage info] [missing usage info prevents renaming] */
  20870. /*! export 4609 [provided] [no usage info] [missing usage info prevents renaming] */
  20871. /*! export 461 [provided] [no usage info] [missing usage info prevents renaming] */
  20872. /*! export 4610 [provided] [no usage info] [missing usage info prevents renaming] */
  20873. /*! export 4611 [provided] [no usage info] [missing usage info prevents renaming] */
  20874. /*! export 4612 [provided] [no usage info] [missing usage info prevents renaming] */
  20875. /*! export 4613 [provided] [no usage info] [missing usage info prevents renaming] */
  20876. /*! export 4614 [provided] [no usage info] [missing usage info prevents renaming] */
  20877. /*! export 4615 [provided] [no usage info] [missing usage info prevents renaming] */
  20878. /*! export 4616 [provided] [no usage info] [missing usage info prevents renaming] */
  20879. /*! export 4617 [provided] [no usage info] [missing usage info prevents renaming] */
  20880. /*! export 4618 [provided] [no usage info] [missing usage info prevents renaming] */
  20881. /*! export 4619 [provided] [no usage info] [missing usage info prevents renaming] */
  20882. /*! export 462 [provided] [no usage info] [missing usage info prevents renaming] */
  20883. /*! export 4620 [provided] [no usage info] [missing usage info prevents renaming] */
  20884. /*! export 4621 [provided] [no usage info] [missing usage info prevents renaming] */
  20885. /*! export 4622 [provided] [no usage info] [missing usage info prevents renaming] */
  20886. /*! export 4623 [provided] [no usage info] [missing usage info prevents renaming] */
  20887. /*! export 4624 [provided] [no usage info] [missing usage info prevents renaming] */
  20888. /*! export 4625 [provided] [no usage info] [missing usage info prevents renaming] */
  20889. /*! export 4626 [provided] [no usage info] [missing usage info prevents renaming] */
  20890. /*! export 4627 [provided] [no usage info] [missing usage info prevents renaming] */
  20891. /*! export 4628 [provided] [no usage info] [missing usage info prevents renaming] */
  20892. /*! export 4629 [provided] [no usage info] [missing usage info prevents renaming] */
  20893. /*! export 463 [provided] [no usage info] [missing usage info prevents renaming] */
  20894. /*! export 4630 [provided] [no usage info] [missing usage info prevents renaming] */
  20895. /*! export 4631 [provided] [no usage info] [missing usage info prevents renaming] */
  20896. /*! export 4632 [provided] [no usage info] [missing usage info prevents renaming] */
  20897. /*! export 4633 [provided] [no usage info] [missing usage info prevents renaming] */
  20898. /*! export 4634 [provided] [no usage info] [missing usage info prevents renaming] */
  20899. /*! export 4635 [provided] [no usage info] [missing usage info prevents renaming] */
  20900. /*! export 4636 [provided] [no usage info] [missing usage info prevents renaming] */
  20901. /*! export 4637 [provided] [no usage info] [missing usage info prevents renaming] */
  20902. /*! export 4638 [provided] [no usage info] [missing usage info prevents renaming] */
  20903. /*! export 4639 [provided] [no usage info] [missing usage info prevents renaming] */
  20904. /*! export 464 [provided] [no usage info] [missing usage info prevents renaming] */
  20905. /*! export 4640 [provided] [no usage info] [missing usage info prevents renaming] */
  20906. /*! export 4641 [provided] [no usage info] [missing usage info prevents renaming] */
  20907. /*! export 4642 [provided] [no usage info] [missing usage info prevents renaming] */
  20908. /*! export 4643 [provided] [no usage info] [missing usage info prevents renaming] */
  20909. /*! export 4644 [provided] [no usage info] [missing usage info prevents renaming] */
  20910. /*! export 4645 [provided] [no usage info] [missing usage info prevents renaming] */
  20911. /*! export 4646 [provided] [no usage info] [missing usage info prevents renaming] */
  20912. /*! export 4647 [provided] [no usage info] [missing usage info prevents renaming] */
  20913. /*! export 4648 [provided] [no usage info] [missing usage info prevents renaming] */
  20914. /*! export 4649 [provided] [no usage info] [missing usage info prevents renaming] */
  20915. /*! export 465 [provided] [no usage info] [missing usage info prevents renaming] */
  20916. /*! export 4650 [provided] [no usage info] [missing usage info prevents renaming] */
  20917. /*! export 4651 [provided] [no usage info] [missing usage info prevents renaming] */
  20918. /*! export 4652 [provided] [no usage info] [missing usage info prevents renaming] */
  20919. /*! export 4653 [provided] [no usage info] [missing usage info prevents renaming] */
  20920. /*! export 4654 [provided] [no usage info] [missing usage info prevents renaming] */
  20921. /*! export 4655 [provided] [no usage info] [missing usage info prevents renaming] */
  20922. /*! export 4656 [provided] [no usage info] [missing usage info prevents renaming] */
  20923. /*! export 4657 [provided] [no usage info] [missing usage info prevents renaming] */
  20924. /*! export 4658 [provided] [no usage info] [missing usage info prevents renaming] */
  20925. /*! export 4659 [provided] [no usage info] [missing usage info prevents renaming] */
  20926. /*! export 466 [provided] [no usage info] [missing usage info prevents renaming] */
  20927. /*! export 4660 [provided] [no usage info] [missing usage info prevents renaming] */
  20928. /*! export 4661 [provided] [no usage info] [missing usage info prevents renaming] */
  20929. /*! export 4662 [provided] [no usage info] [missing usage info prevents renaming] */
  20930. /*! export 4663 [provided] [no usage info] [missing usage info prevents renaming] */
  20931. /*! export 4664 [provided] [no usage info] [missing usage info prevents renaming] */
  20932. /*! export 4665 [provided] [no usage info] [missing usage info prevents renaming] */
  20933. /*! export 4666 [provided] [no usage info] [missing usage info prevents renaming] */
  20934. /*! export 4667 [provided] [no usage info] [missing usage info prevents renaming] */
  20935. /*! export 4668 [provided] [no usage info] [missing usage info prevents renaming] */
  20936. /*! export 4669 [provided] [no usage info] [missing usage info prevents renaming] */
  20937. /*! export 467 [provided] [no usage info] [missing usage info prevents renaming] */
  20938. /*! export 4670 [provided] [no usage info] [missing usage info prevents renaming] */
  20939. /*! export 4671 [provided] [no usage info] [missing usage info prevents renaming] */
  20940. /*! export 4672 [provided] [no usage info] [missing usage info prevents renaming] */
  20941. /*! export 4673 [provided] [no usage info] [missing usage info prevents renaming] */
  20942. /*! export 4674 [provided] [no usage info] [missing usage info prevents renaming] */
  20943. /*! export 4675 [provided] [no usage info] [missing usage info prevents renaming] */
  20944. /*! export 4676 [provided] [no usage info] [missing usage info prevents renaming] */
  20945. /*! export 4677 [provided] [no usage info] [missing usage info prevents renaming] */
  20946. /*! export 4678 [provided] [no usage info] [missing usage info prevents renaming] */
  20947. /*! export 4679 [provided] [no usage info] [missing usage info prevents renaming] */
  20948. /*! export 468 [provided] [no usage info] [missing usage info prevents renaming] */
  20949. /*! export 4680 [provided] [no usage info] [missing usage info prevents renaming] */
  20950. /*! export 4681 [provided] [no usage info] [missing usage info prevents renaming] */
  20951. /*! export 4682 [provided] [no usage info] [missing usage info prevents renaming] */
  20952. /*! export 4683 [provided] [no usage info] [missing usage info prevents renaming] */
  20953. /*! export 4684 [provided] [no usage info] [missing usage info prevents renaming] */
  20954. /*! export 4685 [provided] [no usage info] [missing usage info prevents renaming] */
  20955. /*! export 4686 [provided] [no usage info] [missing usage info prevents renaming] */
  20956. /*! export 4687 [provided] [no usage info] [missing usage info prevents renaming] */
  20957. /*! export 4688 [provided] [no usage info] [missing usage info prevents renaming] */
  20958. /*! export 4689 [provided] [no usage info] [missing usage info prevents renaming] */
  20959. /*! export 469 [provided] [no usage info] [missing usage info prevents renaming] */
  20960. /*! export 4690 [provided] [no usage info] [missing usage info prevents renaming] */
  20961. /*! export 4691 [provided] [no usage info] [missing usage info prevents renaming] */
  20962. /*! export 4692 [provided] [no usage info] [missing usage info prevents renaming] */
  20963. /*! export 4693 [provided] [no usage info] [missing usage info prevents renaming] */
  20964. /*! export 4694 [provided] [no usage info] [missing usage info prevents renaming] */
  20965. /*! export 4695 [provided] [no usage info] [missing usage info prevents renaming] */
  20966. /*! export 4696 [provided] [no usage info] [missing usage info prevents renaming] */
  20967. /*! export 4697 [provided] [no usage info] [missing usage info prevents renaming] */
  20968. /*! export 4698 [provided] [no usage info] [missing usage info prevents renaming] */
  20969. /*! export 4699 [provided] [no usage info] [missing usage info prevents renaming] */
  20970. /*! export 47 [provided] [no usage info] [missing usage info prevents renaming] */
  20971. /*! export 470 [provided] [no usage info] [missing usage info prevents renaming] */
  20972. /*! export 4700 [provided] [no usage info] [missing usage info prevents renaming] */
  20973. /*! export 4701 [provided] [no usage info] [missing usage info prevents renaming] */
  20974. /*! export 4702 [provided] [no usage info] [missing usage info prevents renaming] */
  20975. /*! export 4703 [provided] [no usage info] [missing usage info prevents renaming] */
  20976. /*! export 4704 [provided] [no usage info] [missing usage info prevents renaming] */
  20977. /*! export 4705 [provided] [no usage info] [missing usage info prevents renaming] */
  20978. /*! export 4706 [provided] [no usage info] [missing usage info prevents renaming] */
  20979. /*! export 4707 [provided] [no usage info] [missing usage info prevents renaming] */
  20980. /*! export 4708 [provided] [no usage info] [missing usage info prevents renaming] */
  20981. /*! export 4709 [provided] [no usage info] [missing usage info prevents renaming] */
  20982. /*! export 471 [provided] [no usage info] [missing usage info prevents renaming] */
  20983. /*! export 4710 [provided] [no usage info] [missing usage info prevents renaming] */
  20984. /*! export 4711 [provided] [no usage info] [missing usage info prevents renaming] */
  20985. /*! export 4712 [provided] [no usage info] [missing usage info prevents renaming] */
  20986. /*! export 4713 [provided] [no usage info] [missing usage info prevents renaming] */
  20987. /*! export 4714 [provided] [no usage info] [missing usage info prevents renaming] */
  20988. /*! export 4715 [provided] [no usage info] [missing usage info prevents renaming] */
  20989. /*! export 4716 [provided] [no usage info] [missing usage info prevents renaming] */
  20990. /*! export 4717 [provided] [no usage info] [missing usage info prevents renaming] */
  20991. /*! export 4718 [provided] [no usage info] [missing usage info prevents renaming] */
  20992. /*! export 4719 [provided] [no usage info] [missing usage info prevents renaming] */
  20993. /*! export 472 [provided] [no usage info] [missing usage info prevents renaming] */
  20994. /*! export 4720 [provided] [no usage info] [missing usage info prevents renaming] */
  20995. /*! export 4721 [provided] [no usage info] [missing usage info prevents renaming] */
  20996. /*! export 4722 [provided] [no usage info] [missing usage info prevents renaming] */
  20997. /*! export 4723 [provided] [no usage info] [missing usage info prevents renaming] */
  20998. /*! export 4724 [provided] [no usage info] [missing usage info prevents renaming] */
  20999. /*! export 4725 [provided] [no usage info] [missing usage info prevents renaming] */
  21000. /*! export 4726 [provided] [no usage info] [missing usage info prevents renaming] */
  21001. /*! export 4727 [provided] [no usage info] [missing usage info prevents renaming] */
  21002. /*! export 4728 [provided] [no usage info] [missing usage info prevents renaming] */
  21003. /*! export 4729 [provided] [no usage info] [missing usage info prevents renaming] */
  21004. /*! export 473 [provided] [no usage info] [missing usage info prevents renaming] */
  21005. /*! export 4730 [provided] [no usage info] [missing usage info prevents renaming] */
  21006. /*! export 4731 [provided] [no usage info] [missing usage info prevents renaming] */
  21007. /*! export 4732 [provided] [no usage info] [missing usage info prevents renaming] */
  21008. /*! export 4733 [provided] [no usage info] [missing usage info prevents renaming] */
  21009. /*! export 4734 [provided] [no usage info] [missing usage info prevents renaming] */
  21010. /*! export 4735 [provided] [no usage info] [missing usage info prevents renaming] */
  21011. /*! export 4736 [provided] [no usage info] [missing usage info prevents renaming] */
  21012. /*! export 4737 [provided] [no usage info] [missing usage info prevents renaming] */
  21013. /*! export 4738 [provided] [no usage info] [missing usage info prevents renaming] */
  21014. /*! export 4739 [provided] [no usage info] [missing usage info prevents renaming] */
  21015. /*! export 474 [provided] [no usage info] [missing usage info prevents renaming] */
  21016. /*! export 4740 [provided] [no usage info] [missing usage info prevents renaming] */
  21017. /*! export 4741 [provided] [no usage info] [missing usage info prevents renaming] */
  21018. /*! export 4742 [provided] [no usage info] [missing usage info prevents renaming] */
  21019. /*! export 4743 [provided] [no usage info] [missing usage info prevents renaming] */
  21020. /*! export 4744 [provided] [no usage info] [missing usage info prevents renaming] */
  21021. /*! export 4745 [provided] [no usage info] [missing usage info prevents renaming] */
  21022. /*! export 4746 [provided] [no usage info] [missing usage info prevents renaming] */
  21023. /*! export 4747 [provided] [no usage info] [missing usage info prevents renaming] */
  21024. /*! export 4748 [provided] [no usage info] [missing usage info prevents renaming] */
  21025. /*! export 4749 [provided] [no usage info] [missing usage info prevents renaming] */
  21026. /*! export 475 [provided] [no usage info] [missing usage info prevents renaming] */
  21027. /*! export 4750 [provided] [no usage info] [missing usage info prevents renaming] */
  21028. /*! export 4751 [provided] [no usage info] [missing usage info prevents renaming] */
  21029. /*! export 4752 [provided] [no usage info] [missing usage info prevents renaming] */
  21030. /*! export 4753 [provided] [no usage info] [missing usage info prevents renaming] */
  21031. /*! export 4754 [provided] [no usage info] [missing usage info prevents renaming] */
  21032. /*! export 4755 [provided] [no usage info] [missing usage info prevents renaming] */
  21033. /*! export 4756 [provided] [no usage info] [missing usage info prevents renaming] */
  21034. /*! export 4757 [provided] [no usage info] [missing usage info prevents renaming] */
  21035. /*! export 4758 [provided] [no usage info] [missing usage info prevents renaming] */
  21036. /*! export 4759 [provided] [no usage info] [missing usage info prevents renaming] */
  21037. /*! export 476 [provided] [no usage info] [missing usage info prevents renaming] */
  21038. /*! export 4760 [provided] [no usage info] [missing usage info prevents renaming] */
  21039. /*! export 4761 [provided] [no usage info] [missing usage info prevents renaming] */
  21040. /*! export 4762 [provided] [no usage info] [missing usage info prevents renaming] */
  21041. /*! export 4763 [provided] [no usage info] [missing usage info prevents renaming] */
  21042. /*! export 4764 [provided] [no usage info] [missing usage info prevents renaming] */
  21043. /*! export 4765 [provided] [no usage info] [missing usage info prevents renaming] */
  21044. /*! export 4766 [provided] [no usage info] [missing usage info prevents renaming] */
  21045. /*! export 4767 [provided] [no usage info] [missing usage info prevents renaming] */
  21046. /*! export 4768 [provided] [no usage info] [missing usage info prevents renaming] */
  21047. /*! export 4769 [provided] [no usage info] [missing usage info prevents renaming] */
  21048. /*! export 477 [provided] [no usage info] [missing usage info prevents renaming] */
  21049. /*! export 4770 [provided] [no usage info] [missing usage info prevents renaming] */
  21050. /*! export 4771 [provided] [no usage info] [missing usage info prevents renaming] */
  21051. /*! export 4772 [provided] [no usage info] [missing usage info prevents renaming] */
  21052. /*! export 4773 [provided] [no usage info] [missing usage info prevents renaming] */
  21053. /*! export 4774 [provided] [no usage info] [missing usage info prevents renaming] */
  21054. /*! export 4775 [provided] [no usage info] [missing usage info prevents renaming] */
  21055. /*! export 4776 [provided] [no usage info] [missing usage info prevents renaming] */
  21056. /*! export 4777 [provided] [no usage info] [missing usage info prevents renaming] */
  21057. /*! export 4778 [provided] [no usage info] [missing usage info prevents renaming] */
  21058. /*! export 4779 [provided] [no usage info] [missing usage info prevents renaming] */
  21059. /*! export 478 [provided] [no usage info] [missing usage info prevents renaming] */
  21060. /*! export 4780 [provided] [no usage info] [missing usage info prevents renaming] */
  21061. /*! export 4781 [provided] [no usage info] [missing usage info prevents renaming] */
  21062. /*! export 4782 [provided] [no usage info] [missing usage info prevents renaming] */
  21063. /*! export 4783 [provided] [no usage info] [missing usage info prevents renaming] */
  21064. /*! export 4784 [provided] [no usage info] [missing usage info prevents renaming] */
  21065. /*! export 4785 [provided] [no usage info] [missing usage info prevents renaming] */
  21066. /*! export 4786 [provided] [no usage info] [missing usage info prevents renaming] */
  21067. /*! export 4787 [provided] [no usage info] [missing usage info prevents renaming] */
  21068. /*! export 4788 [provided] [no usage info] [missing usage info prevents renaming] */
  21069. /*! export 4789 [provided] [no usage info] [missing usage info prevents renaming] */
  21070. /*! export 479 [provided] [no usage info] [missing usage info prevents renaming] */
  21071. /*! export 4790 [provided] [no usage info] [missing usage info prevents renaming] */
  21072. /*! export 4791 [provided] [no usage info] [missing usage info prevents renaming] */
  21073. /*! export 4792 [provided] [no usage info] [missing usage info prevents renaming] */
  21074. /*! export 4793 [provided] [no usage info] [missing usage info prevents renaming] */
  21075. /*! export 4794 [provided] [no usage info] [missing usage info prevents renaming] */
  21076. /*! export 4795 [provided] [no usage info] [missing usage info prevents renaming] */
  21077. /*! export 4796 [provided] [no usage info] [missing usage info prevents renaming] */
  21078. /*! export 4797 [provided] [no usage info] [missing usage info prevents renaming] */
  21079. /*! export 4798 [provided] [no usage info] [missing usage info prevents renaming] */
  21080. /*! export 4799 [provided] [no usage info] [missing usage info prevents renaming] */
  21081. /*! export 48 [provided] [no usage info] [missing usage info prevents renaming] */
  21082. /*! export 480 [provided] [no usage info] [missing usage info prevents renaming] */
  21083. /*! export 4800 [provided] [no usage info] [missing usage info prevents renaming] */
  21084. /*! export 4801 [provided] [no usage info] [missing usage info prevents renaming] */
  21085. /*! export 4802 [provided] [no usage info] [missing usage info prevents renaming] */
  21086. /*! export 4803 [provided] [no usage info] [missing usage info prevents renaming] */
  21087. /*! export 4804 [provided] [no usage info] [missing usage info prevents renaming] */
  21088. /*! export 4805 [provided] [no usage info] [missing usage info prevents renaming] */
  21089. /*! export 4806 [provided] [no usage info] [missing usage info prevents renaming] */
  21090. /*! export 4807 [provided] [no usage info] [missing usage info prevents renaming] */
  21091. /*! export 4808 [provided] [no usage info] [missing usage info prevents renaming] */
  21092. /*! export 4809 [provided] [no usage info] [missing usage info prevents renaming] */
  21093. /*! export 481 [provided] [no usage info] [missing usage info prevents renaming] */
  21094. /*! export 4810 [provided] [no usage info] [missing usage info prevents renaming] */
  21095. /*! export 4811 [provided] [no usage info] [missing usage info prevents renaming] */
  21096. /*! export 4812 [provided] [no usage info] [missing usage info prevents renaming] */
  21097. /*! export 4813 [provided] [no usage info] [missing usage info prevents renaming] */
  21098. /*! export 4814 [provided] [no usage info] [missing usage info prevents renaming] */
  21099. /*! export 4815 [provided] [no usage info] [missing usage info prevents renaming] */
  21100. /*! export 4816 [provided] [no usage info] [missing usage info prevents renaming] */
  21101. /*! export 4817 [provided] [no usage info] [missing usage info prevents renaming] */
  21102. /*! export 4818 [provided] [no usage info] [missing usage info prevents renaming] */
  21103. /*! export 4819 [provided] [no usage info] [missing usage info prevents renaming] */
  21104. /*! export 482 [provided] [no usage info] [missing usage info prevents renaming] */
  21105. /*! export 4820 [provided] [no usage info] [missing usage info prevents renaming] */
  21106. /*! export 4821 [provided] [no usage info] [missing usage info prevents renaming] */
  21107. /*! export 4822 [provided] [no usage info] [missing usage info prevents renaming] */
  21108. /*! export 4823 [provided] [no usage info] [missing usage info prevents renaming] */
  21109. /*! export 4824 [provided] [no usage info] [missing usage info prevents renaming] */
  21110. /*! export 4825 [provided] [no usage info] [missing usage info prevents renaming] */
  21111. /*! export 4826 [provided] [no usage info] [missing usage info prevents renaming] */
  21112. /*! export 4827 [provided] [no usage info] [missing usage info prevents renaming] */
  21113. /*! export 4828 [provided] [no usage info] [missing usage info prevents renaming] */
  21114. /*! export 4829 [provided] [no usage info] [missing usage info prevents renaming] */
  21115. /*! export 483 [provided] [no usage info] [missing usage info prevents renaming] */
  21116. /*! export 4830 [provided] [no usage info] [missing usage info prevents renaming] */
  21117. /*! export 4831 [provided] [no usage info] [missing usage info prevents renaming] */
  21118. /*! export 4832 [provided] [no usage info] [missing usage info prevents renaming] */
  21119. /*! export 4833 [provided] [no usage info] [missing usage info prevents renaming] */
  21120. /*! export 4834 [provided] [no usage info] [missing usage info prevents renaming] */
  21121. /*! export 4835 [provided] [no usage info] [missing usage info prevents renaming] */
  21122. /*! export 4836 [provided] [no usage info] [missing usage info prevents renaming] */
  21123. /*! export 4837 [provided] [no usage info] [missing usage info prevents renaming] */
  21124. /*! export 4838 [provided] [no usage info] [missing usage info prevents renaming] */
  21125. /*! export 4839 [provided] [no usage info] [missing usage info prevents renaming] */
  21126. /*! export 484 [provided] [no usage info] [missing usage info prevents renaming] */
  21127. /*! export 4840 [provided] [no usage info] [missing usage info prevents renaming] */
  21128. /*! export 4841 [provided] [no usage info] [missing usage info prevents renaming] */
  21129. /*! export 4842 [provided] [no usage info] [missing usage info prevents renaming] */
  21130. /*! export 4843 [provided] [no usage info] [missing usage info prevents renaming] */
  21131. /*! export 4844 [provided] [no usage info] [missing usage info prevents renaming] */
  21132. /*! export 4845 [provided] [no usage info] [missing usage info prevents renaming] */
  21133. /*! export 4846 [provided] [no usage info] [missing usage info prevents renaming] */
  21134. /*! export 4847 [provided] [no usage info] [missing usage info prevents renaming] */
  21135. /*! export 4848 [provided] [no usage info] [missing usage info prevents renaming] */
  21136. /*! export 4849 [provided] [no usage info] [missing usage info prevents renaming] */
  21137. /*! export 485 [provided] [no usage info] [missing usage info prevents renaming] */
  21138. /*! export 4850 [provided] [no usage info] [missing usage info prevents renaming] */
  21139. /*! export 4851 [provided] [no usage info] [missing usage info prevents renaming] */
  21140. /*! export 4852 [provided] [no usage info] [missing usage info prevents renaming] */
  21141. /*! export 4853 [provided] [no usage info] [missing usage info prevents renaming] */
  21142. /*! export 4854 [provided] [no usage info] [missing usage info prevents renaming] */
  21143. /*! export 4855 [provided] [no usage info] [missing usage info prevents renaming] */
  21144. /*! export 4856 [provided] [no usage info] [missing usage info prevents renaming] */
  21145. /*! export 4857 [provided] [no usage info] [missing usage info prevents renaming] */
  21146. /*! export 4858 [provided] [no usage info] [missing usage info prevents renaming] */
  21147. /*! export 4859 [provided] [no usage info] [missing usage info prevents renaming] */
  21148. /*! export 486 [provided] [no usage info] [missing usage info prevents renaming] */
  21149. /*! export 4860 [provided] [no usage info] [missing usage info prevents renaming] */
  21150. /*! export 4861 [provided] [no usage info] [missing usage info prevents renaming] */
  21151. /*! export 4862 [provided] [no usage info] [missing usage info prevents renaming] */
  21152. /*! export 4863 [provided] [no usage info] [missing usage info prevents renaming] */
  21153. /*! export 4864 [provided] [no usage info] [missing usage info prevents renaming] */
  21154. /*! export 4865 [provided] [no usage info] [missing usage info prevents renaming] */
  21155. /*! export 4866 [provided] [no usage info] [missing usage info prevents renaming] */
  21156. /*! export 4867 [provided] [no usage info] [missing usage info prevents renaming] */
  21157. /*! export 4868 [provided] [no usage info] [missing usage info prevents renaming] */
  21158. /*! export 4869 [provided] [no usage info] [missing usage info prevents renaming] */
  21159. /*! export 487 [provided] [no usage info] [missing usage info prevents renaming] */
  21160. /*! export 4870 [provided] [no usage info] [missing usage info prevents renaming] */
  21161. /*! export 4871 [provided] [no usage info] [missing usage info prevents renaming] */
  21162. /*! export 4872 [provided] [no usage info] [missing usage info prevents renaming] */
  21163. /*! export 4873 [provided] [no usage info] [missing usage info prevents renaming] */
  21164. /*! export 4874 [provided] [no usage info] [missing usage info prevents renaming] */
  21165. /*! export 4875 [provided] [no usage info] [missing usage info prevents renaming] */
  21166. /*! export 4876 [provided] [no usage info] [missing usage info prevents renaming] */
  21167. /*! export 4877 [provided] [no usage info] [missing usage info prevents renaming] */
  21168. /*! export 4878 [provided] [no usage info] [missing usage info prevents renaming] */
  21169. /*! export 4879 [provided] [no usage info] [missing usage info prevents renaming] */
  21170. /*! export 488 [provided] [no usage info] [missing usage info prevents renaming] */
  21171. /*! export 4880 [provided] [no usage info] [missing usage info prevents renaming] */
  21172. /*! export 4881 [provided] [no usage info] [missing usage info prevents renaming] */
  21173. /*! export 4882 [provided] [no usage info] [missing usage info prevents renaming] */
  21174. /*! export 4883 [provided] [no usage info] [missing usage info prevents renaming] */
  21175. /*! export 4884 [provided] [no usage info] [missing usage info prevents renaming] */
  21176. /*! export 4885 [provided] [no usage info] [missing usage info prevents renaming] */
  21177. /*! export 4886 [provided] [no usage info] [missing usage info prevents renaming] */
  21178. /*! export 4887 [provided] [no usage info] [missing usage info prevents renaming] */
  21179. /*! export 4888 [provided] [no usage info] [missing usage info prevents renaming] */
  21180. /*! export 4889 [provided] [no usage info] [missing usage info prevents renaming] */
  21181. /*! export 489 [provided] [no usage info] [missing usage info prevents renaming] */
  21182. /*! export 4890 [provided] [no usage info] [missing usage info prevents renaming] */
  21183. /*! export 4891 [provided] [no usage info] [missing usage info prevents renaming] */
  21184. /*! export 4892 [provided] [no usage info] [missing usage info prevents renaming] */
  21185. /*! export 4893 [provided] [no usage info] [missing usage info prevents renaming] */
  21186. /*! export 4894 [provided] [no usage info] [missing usage info prevents renaming] */
  21187. /*! export 4895 [provided] [no usage info] [missing usage info prevents renaming] */
  21188. /*! export 4896 [provided] [no usage info] [missing usage info prevents renaming] */
  21189. /*! export 4897 [provided] [no usage info] [missing usage info prevents renaming] */
  21190. /*! export 4898 [provided] [no usage info] [missing usage info prevents renaming] */
  21191. /*! export 4899 [provided] [no usage info] [missing usage info prevents renaming] */
  21192. /*! export 49 [provided] [no usage info] [missing usage info prevents renaming] */
  21193. /*! export 490 [provided] [no usage info] [missing usage info prevents renaming] */
  21194. /*! export 4900 [provided] [no usage info] [missing usage info prevents renaming] */
  21195. /*! export 4901 [provided] [no usage info] [missing usage info prevents renaming] */
  21196. /*! export 4902 [provided] [no usage info] [missing usage info prevents renaming] */
  21197. /*! export 4903 [provided] [no usage info] [missing usage info prevents renaming] */
  21198. /*! export 4904 [provided] [no usage info] [missing usage info prevents renaming] */
  21199. /*! export 4905 [provided] [no usage info] [missing usage info prevents renaming] */
  21200. /*! export 4906 [provided] [no usage info] [missing usage info prevents renaming] */
  21201. /*! export 4907 [provided] [no usage info] [missing usage info prevents renaming] */
  21202. /*! export 4908 [provided] [no usage info] [missing usage info prevents renaming] */
  21203. /*! export 4909 [provided] [no usage info] [missing usage info prevents renaming] */
  21204. /*! export 491 [provided] [no usage info] [missing usage info prevents renaming] */
  21205. /*! export 4910 [provided] [no usage info] [missing usage info prevents renaming] */
  21206. /*! export 4911 [provided] [no usage info] [missing usage info prevents renaming] */
  21207. /*! export 4912 [provided] [no usage info] [missing usage info prevents renaming] */
  21208. /*! export 4913 [provided] [no usage info] [missing usage info prevents renaming] */
  21209. /*! export 4914 [provided] [no usage info] [missing usage info prevents renaming] */
  21210. /*! export 4915 [provided] [no usage info] [missing usage info prevents renaming] */
  21211. /*! export 4916 [provided] [no usage info] [missing usage info prevents renaming] */
  21212. /*! export 4917 [provided] [no usage info] [missing usage info prevents renaming] */
  21213. /*! export 4918 [provided] [no usage info] [missing usage info prevents renaming] */
  21214. /*! export 4919 [provided] [no usage info] [missing usage info prevents renaming] */
  21215. /*! export 492 [provided] [no usage info] [missing usage info prevents renaming] */
  21216. /*! export 4920 [provided] [no usage info] [missing usage info prevents renaming] */
  21217. /*! export 4921 [provided] [no usage info] [missing usage info prevents renaming] */
  21218. /*! export 4922 [provided] [no usage info] [missing usage info prevents renaming] */
  21219. /*! export 4923 [provided] [no usage info] [missing usage info prevents renaming] */
  21220. /*! export 4924 [provided] [no usage info] [missing usage info prevents renaming] */
  21221. /*! export 4925 [provided] [no usage info] [missing usage info prevents renaming] */
  21222. /*! export 4926 [provided] [no usage info] [missing usage info prevents renaming] */
  21223. /*! export 4927 [provided] [no usage info] [missing usage info prevents renaming] */
  21224. /*! export 4928 [provided] [no usage info] [missing usage info prevents renaming] */
  21225. /*! export 4929 [provided] [no usage info] [missing usage info prevents renaming] */
  21226. /*! export 493 [provided] [no usage info] [missing usage info prevents renaming] */
  21227. /*! export 4930 [provided] [no usage info] [missing usage info prevents renaming] */
  21228. /*! export 4931 [provided] [no usage info] [missing usage info prevents renaming] */
  21229. /*! export 4932 [provided] [no usage info] [missing usage info prevents renaming] */
  21230. /*! export 4933 [provided] [no usage info] [missing usage info prevents renaming] */
  21231. /*! export 4934 [provided] [no usage info] [missing usage info prevents renaming] */
  21232. /*! export 4935 [provided] [no usage info] [missing usage info prevents renaming] */
  21233. /*! export 4936 [provided] [no usage info] [missing usage info prevents renaming] */
  21234. /*! export 4937 [provided] [no usage info] [missing usage info prevents renaming] */
  21235. /*! export 4938 [provided] [no usage info] [missing usage info prevents renaming] */
  21236. /*! export 4939 [provided] [no usage info] [missing usage info prevents renaming] */
  21237. /*! export 494 [provided] [no usage info] [missing usage info prevents renaming] */
  21238. /*! export 4940 [provided] [no usage info] [missing usage info prevents renaming] */
  21239. /*! export 4941 [provided] [no usage info] [missing usage info prevents renaming] */
  21240. /*! export 4942 [provided] [no usage info] [missing usage info prevents renaming] */
  21241. /*! export 4943 [provided] [no usage info] [missing usage info prevents renaming] */
  21242. /*! export 4944 [provided] [no usage info] [missing usage info prevents renaming] */
  21243. /*! export 4945 [provided] [no usage info] [missing usage info prevents renaming] */
  21244. /*! export 4946 [provided] [no usage info] [missing usage info prevents renaming] */
  21245. /*! export 4947 [provided] [no usage info] [missing usage info prevents renaming] */
  21246. /*! export 4948 [provided] [no usage info] [missing usage info prevents renaming] */
  21247. /*! export 4949 [provided] [no usage info] [missing usage info prevents renaming] */
  21248. /*! export 495 [provided] [no usage info] [missing usage info prevents renaming] */
  21249. /*! export 4950 [provided] [no usage info] [missing usage info prevents renaming] */
  21250. /*! export 4951 [provided] [no usage info] [missing usage info prevents renaming] */
  21251. /*! export 4952 [provided] [no usage info] [missing usage info prevents renaming] */
  21252. /*! export 4953 [provided] [no usage info] [missing usage info prevents renaming] */
  21253. /*! export 4954 [provided] [no usage info] [missing usage info prevents renaming] */
  21254. /*! export 4955 [provided] [no usage info] [missing usage info prevents renaming] */
  21255. /*! export 4956 [provided] [no usage info] [missing usage info prevents renaming] */
  21256. /*! export 4957 [provided] [no usage info] [missing usage info prevents renaming] */
  21257. /*! export 4958 [provided] [no usage info] [missing usage info prevents renaming] */
  21258. /*! export 4959 [provided] [no usage info] [missing usage info prevents renaming] */
  21259. /*! export 496 [provided] [no usage info] [missing usage info prevents renaming] */
  21260. /*! export 4960 [provided] [no usage info] [missing usage info prevents renaming] */
  21261. /*! export 4961 [provided] [no usage info] [missing usage info prevents renaming] */
  21262. /*! export 4962 [provided] [no usage info] [missing usage info prevents renaming] */
  21263. /*! export 4963 [provided] [no usage info] [missing usage info prevents renaming] */
  21264. /*! export 4964 [provided] [no usage info] [missing usage info prevents renaming] */
  21265. /*! export 4965 [provided] [no usage info] [missing usage info prevents renaming] */
  21266. /*! export 4966 [provided] [no usage info] [missing usage info prevents renaming] */
  21267. /*! export 4967 [provided] [no usage info] [missing usage info prevents renaming] */
  21268. /*! export 4968 [provided] [no usage info] [missing usage info prevents renaming] */
  21269. /*! export 4969 [provided] [no usage info] [missing usage info prevents renaming] */
  21270. /*! export 497 [provided] [no usage info] [missing usage info prevents renaming] */
  21271. /*! export 4970 [provided] [no usage info] [missing usage info prevents renaming] */
  21272. /*! export 4971 [provided] [no usage info] [missing usage info prevents renaming] */
  21273. /*! export 4972 [provided] [no usage info] [missing usage info prevents renaming] */
  21274. /*! export 4973 [provided] [no usage info] [missing usage info prevents renaming] */
  21275. /*! export 4974 [provided] [no usage info] [missing usage info prevents renaming] */
  21276. /*! export 4975 [provided] [no usage info] [missing usage info prevents renaming] */
  21277. /*! export 4976 [provided] [no usage info] [missing usage info prevents renaming] */
  21278. /*! export 4977 [provided] [no usage info] [missing usage info prevents renaming] */
  21279. /*! export 4978 [provided] [no usage info] [missing usage info prevents renaming] */
  21280. /*! export 4979 [provided] [no usage info] [missing usage info prevents renaming] */
  21281. /*! export 498 [provided] [no usage info] [missing usage info prevents renaming] */
  21282. /*! export 4980 [provided] [no usage info] [missing usage info prevents renaming] */
  21283. /*! export 4981 [provided] [no usage info] [missing usage info prevents renaming] */
  21284. /*! export 4982 [provided] [no usage info] [missing usage info prevents renaming] */
  21285. /*! export 4983 [provided] [no usage info] [missing usage info prevents renaming] */
  21286. /*! export 4984 [provided] [no usage info] [missing usage info prevents renaming] */
  21287. /*! export 4985 [provided] [no usage info] [missing usage info prevents renaming] */
  21288. /*! export 4986 [provided] [no usage info] [missing usage info prevents renaming] */
  21289. /*! export 4987 [provided] [no usage info] [missing usage info prevents renaming] */
  21290. /*! export 4988 [provided] [no usage info] [missing usage info prevents renaming] */
  21291. /*! export 4989 [provided] [no usage info] [missing usage info prevents renaming] */
  21292. /*! export 499 [provided] [no usage info] [missing usage info prevents renaming] */
  21293. /*! export 4990 [provided] [no usage info] [missing usage info prevents renaming] */
  21294. /*! export 4991 [provided] [no usage info] [missing usage info prevents renaming] */
  21295. /*! export 4992 [provided] [no usage info] [missing usage info prevents renaming] */
  21296. /*! export 4993 [provided] [no usage info] [missing usage info prevents renaming] */
  21297. /*! export 4994 [provided] [no usage info] [missing usage info prevents renaming] */
  21298. /*! export 4995 [provided] [no usage info] [missing usage info prevents renaming] */
  21299. /*! export 4996 [provided] [no usage info] [missing usage info prevents renaming] */
  21300. /*! export 4997 [provided] [no usage info] [missing usage info prevents renaming] */
  21301. /*! export 4998 [provided] [no usage info] [missing usage info prevents renaming] */
  21302. /*! export 4999 [provided] [no usage info] [missing usage info prevents renaming] */
  21303. /*! export 5 [provided] [no usage info] [missing usage info prevents renaming] */
  21304. /*! export 50 [provided] [no usage info] [missing usage info prevents renaming] */
  21305. /*! export 500 [provided] [no usage info] [missing usage info prevents renaming] */
  21306. /*! export 5000 [provided] [no usage info] [missing usage info prevents renaming] */
  21307. /*! export 5001 [provided] [no usage info] [missing usage info prevents renaming] */
  21308. /*! export 5002 [provided] [no usage info] [missing usage info prevents renaming] */
  21309. /*! export 5003 [provided] [no usage info] [missing usage info prevents renaming] */
  21310. /*! export 5004 [provided] [no usage info] [missing usage info prevents renaming] */
  21311. /*! export 5005 [provided] [no usage info] [missing usage info prevents renaming] */
  21312. /*! export 5006 [provided] [no usage info] [missing usage info prevents renaming] */
  21313. /*! export 5007 [provided] [no usage info] [missing usage info prevents renaming] */
  21314. /*! export 5008 [provided] [no usage info] [missing usage info prevents renaming] */
  21315. /*! export 5009 [provided] [no usage info] [missing usage info prevents renaming] */
  21316. /*! export 501 [provided] [no usage info] [missing usage info prevents renaming] */
  21317. /*! export 5010 [provided] [no usage info] [missing usage info prevents renaming] */
  21318. /*! export 5011 [provided] [no usage info] [missing usage info prevents renaming] */
  21319. /*! export 5012 [provided] [no usage info] [missing usage info prevents renaming] */
  21320. /*! export 5013 [provided] [no usage info] [missing usage info prevents renaming] */
  21321. /*! export 5014 [provided] [no usage info] [missing usage info prevents renaming] */
  21322. /*! export 5015 [provided] [no usage info] [missing usage info prevents renaming] */
  21323. /*! export 5016 [provided] [no usage info] [missing usage info prevents renaming] */
  21324. /*! export 5017 [provided] [no usage info] [missing usage info prevents renaming] */
  21325. /*! export 5018 [provided] [no usage info] [missing usage info prevents renaming] */
  21326. /*! export 5019 [provided] [no usage info] [missing usage info prevents renaming] */
  21327. /*! export 502 [provided] [no usage info] [missing usage info prevents renaming] */
  21328. /*! export 5020 [provided] [no usage info] [missing usage info prevents renaming] */
  21329. /*! export 5021 [provided] [no usage info] [missing usage info prevents renaming] */
  21330. /*! export 5022 [provided] [no usage info] [missing usage info prevents renaming] */
  21331. /*! export 5023 [provided] [no usage info] [missing usage info prevents renaming] */
  21332. /*! export 5024 [provided] [no usage info] [missing usage info prevents renaming] */
  21333. /*! export 5025 [provided] [no usage info] [missing usage info prevents renaming] */
  21334. /*! export 5026 [provided] [no usage info] [missing usage info prevents renaming] */
  21335. /*! export 5027 [provided] [no usage info] [missing usage info prevents renaming] */
  21336. /*! export 5028 [provided] [no usage info] [missing usage info prevents renaming] */
  21337. /*! export 5029 [provided] [no usage info] [missing usage info prevents renaming] */
  21338. /*! export 503 [provided] [no usage info] [missing usage info prevents renaming] */
  21339. /*! export 5030 [provided] [no usage info] [missing usage info prevents renaming] */
  21340. /*! export 5031 [provided] [no usage info] [missing usage info prevents renaming] */
  21341. /*! export 5032 [provided] [no usage info] [missing usage info prevents renaming] */
  21342. /*! export 5033 [provided] [no usage info] [missing usage info prevents renaming] */
  21343. /*! export 5034 [provided] [no usage info] [missing usage info prevents renaming] */
  21344. /*! export 5035 [provided] [no usage info] [missing usage info prevents renaming] */
  21345. /*! export 5036 [provided] [no usage info] [missing usage info prevents renaming] */
  21346. /*! export 5037 [provided] [no usage info] [missing usage info prevents renaming] */
  21347. /*! export 5038 [provided] [no usage info] [missing usage info prevents renaming] */
  21348. /*! export 5039 [provided] [no usage info] [missing usage info prevents renaming] */
  21349. /*! export 504 [provided] [no usage info] [missing usage info prevents renaming] */
  21350. /*! export 5040 [provided] [no usage info] [missing usage info prevents renaming] */
  21351. /*! export 5041 [provided] [no usage info] [missing usage info prevents renaming] */
  21352. /*! export 5042 [provided] [no usage info] [missing usage info prevents renaming] */
  21353. /*! export 5043 [provided] [no usage info] [missing usage info prevents renaming] */
  21354. /*! export 5044 [provided] [no usage info] [missing usage info prevents renaming] */
  21355. /*! export 5045 [provided] [no usage info] [missing usage info prevents renaming] */
  21356. /*! export 5046 [provided] [no usage info] [missing usage info prevents renaming] */
  21357. /*! export 5047 [provided] [no usage info] [missing usage info prevents renaming] */
  21358. /*! export 5048 [provided] [no usage info] [missing usage info prevents renaming] */
  21359. /*! export 5049 [provided] [no usage info] [missing usage info prevents renaming] */
  21360. /*! export 505 [provided] [no usage info] [missing usage info prevents renaming] */
  21361. /*! export 5050 [provided] [no usage info] [missing usage info prevents renaming] */
  21362. /*! export 5051 [provided] [no usage info] [missing usage info prevents renaming] */
  21363. /*! export 5052 [provided] [no usage info] [missing usage info prevents renaming] */
  21364. /*! export 5053 [provided] [no usage info] [missing usage info prevents renaming] */
  21365. /*! export 5054 [provided] [no usage info] [missing usage info prevents renaming] */
  21366. /*! export 5055 [provided] [no usage info] [missing usage info prevents renaming] */
  21367. /*! export 5056 [provided] [no usage info] [missing usage info prevents renaming] */
  21368. /*! export 5057 [provided] [no usage info] [missing usage info prevents renaming] */
  21369. /*! export 5058 [provided] [no usage info] [missing usage info prevents renaming] */
  21370. /*! export 5059 [provided] [no usage info] [missing usage info prevents renaming] */
  21371. /*! export 506 [provided] [no usage info] [missing usage info prevents renaming] */
  21372. /*! export 5060 [provided] [no usage info] [missing usage info prevents renaming] */
  21373. /*! export 5061 [provided] [no usage info] [missing usage info prevents renaming] */
  21374. /*! export 5062 [provided] [no usage info] [missing usage info prevents renaming] */
  21375. /*! export 5063 [provided] [no usage info] [missing usage info prevents renaming] */
  21376. /*! export 5064 [provided] [no usage info] [missing usage info prevents renaming] */
  21377. /*! export 5065 [provided] [no usage info] [missing usage info prevents renaming] */
  21378. /*! export 5066 [provided] [no usage info] [missing usage info prevents renaming] */
  21379. /*! export 5067 [provided] [no usage info] [missing usage info prevents renaming] */
  21380. /*! export 5068 [provided] [no usage info] [missing usage info prevents renaming] */
  21381. /*! export 5069 [provided] [no usage info] [missing usage info prevents renaming] */
  21382. /*! export 507 [provided] [no usage info] [missing usage info prevents renaming] */
  21383. /*! export 5070 [provided] [no usage info] [missing usage info prevents renaming] */
  21384. /*! export 5071 [provided] [no usage info] [missing usage info prevents renaming] */
  21385. /*! export 5072 [provided] [no usage info] [missing usage info prevents renaming] */
  21386. /*! export 5073 [provided] [no usage info] [missing usage info prevents renaming] */
  21387. /*! export 5074 [provided] [no usage info] [missing usage info prevents renaming] */
  21388. /*! export 5075 [provided] [no usage info] [missing usage info prevents renaming] */
  21389. /*! export 5076 [provided] [no usage info] [missing usage info prevents renaming] */
  21390. /*! export 5077 [provided] [no usage info] [missing usage info prevents renaming] */
  21391. /*! export 5078 [provided] [no usage info] [missing usage info prevents renaming] */
  21392. /*! export 5079 [provided] [no usage info] [missing usage info prevents renaming] */
  21393. /*! export 508 [provided] [no usage info] [missing usage info prevents renaming] */
  21394. /*! export 5080 [provided] [no usage info] [missing usage info prevents renaming] */
  21395. /*! export 5081 [provided] [no usage info] [missing usage info prevents renaming] */
  21396. /*! export 5082 [provided] [no usage info] [missing usage info prevents renaming] */
  21397. /*! export 5083 [provided] [no usage info] [missing usage info prevents renaming] */
  21398. /*! export 5084 [provided] [no usage info] [missing usage info prevents renaming] */
  21399. /*! export 5085 [provided] [no usage info] [missing usage info prevents renaming] */
  21400. /*! export 5086 [provided] [no usage info] [missing usage info prevents renaming] */
  21401. /*! export 5087 [provided] [no usage info] [missing usage info prevents renaming] */
  21402. /*! export 5088 [provided] [no usage info] [missing usage info prevents renaming] */
  21403. /*! export 5089 [provided] [no usage info] [missing usage info prevents renaming] */
  21404. /*! export 509 [provided] [no usage info] [missing usage info prevents renaming] */
  21405. /*! export 5090 [provided] [no usage info] [missing usage info prevents renaming] */
  21406. /*! export 5091 [provided] [no usage info] [missing usage info prevents renaming] */
  21407. /*! export 5092 [provided] [no usage info] [missing usage info prevents renaming] */
  21408. /*! export 5093 [provided] [no usage info] [missing usage info prevents renaming] */
  21409. /*! export 5094 [provided] [no usage info] [missing usage info prevents renaming] */
  21410. /*! export 5095 [provided] [no usage info] [missing usage info prevents renaming] */
  21411. /*! export 5096 [provided] [no usage info] [missing usage info prevents renaming] */
  21412. /*! export 5097 [provided] [no usage info] [missing usage info prevents renaming] */
  21413. /*! export 5098 [provided] [no usage info] [missing usage info prevents renaming] */
  21414. /*! export 5099 [provided] [no usage info] [missing usage info prevents renaming] */
  21415. /*! export 51 [provided] [no usage info] [missing usage info prevents renaming] */
  21416. /*! export 510 [provided] [no usage info] [missing usage info prevents renaming] */
  21417. /*! export 5100 [provided] [no usage info] [missing usage info prevents renaming] */
  21418. /*! export 5101 [provided] [no usage info] [missing usage info prevents renaming] */
  21419. /*! export 5102 [provided] [no usage info] [missing usage info prevents renaming] */
  21420. /*! export 5103 [provided] [no usage info] [missing usage info prevents renaming] */
  21421. /*! export 5104 [provided] [no usage info] [missing usage info prevents renaming] */
  21422. /*! export 5105 [provided] [no usage info] [missing usage info prevents renaming] */
  21423. /*! export 5106 [provided] [no usage info] [missing usage info prevents renaming] */
  21424. /*! export 5107 [provided] [no usage info] [missing usage info prevents renaming] */
  21425. /*! export 5108 [provided] [no usage info] [missing usage info prevents renaming] */
  21426. /*! export 5109 [provided] [no usage info] [missing usage info prevents renaming] */
  21427. /*! export 511 [provided] [no usage info] [missing usage info prevents renaming] */
  21428. /*! export 5110 [provided] [no usage info] [missing usage info prevents renaming] */
  21429. /*! export 5111 [provided] [no usage info] [missing usage info prevents renaming] */
  21430. /*! export 5112 [provided] [no usage info] [missing usage info prevents renaming] */
  21431. /*! export 5113 [provided] [no usage info] [missing usage info prevents renaming] */
  21432. /*! export 5114 [provided] [no usage info] [missing usage info prevents renaming] */
  21433. /*! export 5115 [provided] [no usage info] [missing usage info prevents renaming] */
  21434. /*! export 5116 [provided] [no usage info] [missing usage info prevents renaming] */
  21435. /*! export 5117 [provided] [no usage info] [missing usage info prevents renaming] */
  21436. /*! export 5118 [provided] [no usage info] [missing usage info prevents renaming] */
  21437. /*! export 5119 [provided] [no usage info] [missing usage info prevents renaming] */
  21438. /*! export 512 [provided] [no usage info] [missing usage info prevents renaming] */
  21439. /*! export 5120 [provided] [no usage info] [missing usage info prevents renaming] */
  21440. /*! export 5121 [provided] [no usage info] [missing usage info prevents renaming] */
  21441. /*! export 5122 [provided] [no usage info] [missing usage info prevents renaming] */
  21442. /*! export 5123 [provided] [no usage info] [missing usage info prevents renaming] */
  21443. /*! export 5124 [provided] [no usage info] [missing usage info prevents renaming] */
  21444. /*! export 5125 [provided] [no usage info] [missing usage info prevents renaming] */
  21445. /*! export 5126 [provided] [no usage info] [missing usage info prevents renaming] */
  21446. /*! export 5127 [provided] [no usage info] [missing usage info prevents renaming] */
  21447. /*! export 5128 [provided] [no usage info] [missing usage info prevents renaming] */
  21448. /*! export 5129 [provided] [no usage info] [missing usage info prevents renaming] */
  21449. /*! export 513 [provided] [no usage info] [missing usage info prevents renaming] */
  21450. /*! export 5130 [provided] [no usage info] [missing usage info prevents renaming] */
  21451. /*! export 5131 [provided] [no usage info] [missing usage info prevents renaming] */
  21452. /*! export 5132 [provided] [no usage info] [missing usage info prevents renaming] */
  21453. /*! export 5133 [provided] [no usage info] [missing usage info prevents renaming] */
  21454. /*! export 5134 [provided] [no usage info] [missing usage info prevents renaming] */
  21455. /*! export 5135 [provided] [no usage info] [missing usage info prevents renaming] */
  21456. /*! export 5136 [provided] [no usage info] [missing usage info prevents renaming] */
  21457. /*! export 5137 [provided] [no usage info] [missing usage info prevents renaming] */
  21458. /*! export 5138 [provided] [no usage info] [missing usage info prevents renaming] */
  21459. /*! export 5139 [provided] [no usage info] [missing usage info prevents renaming] */
  21460. /*! export 514 [provided] [no usage info] [missing usage info prevents renaming] */
  21461. /*! export 5140 [provided] [no usage info] [missing usage info prevents renaming] */
  21462. /*! export 5141 [provided] [no usage info] [missing usage info prevents renaming] */
  21463. /*! export 5142 [provided] [no usage info] [missing usage info prevents renaming] */
  21464. /*! export 5143 [provided] [no usage info] [missing usage info prevents renaming] */
  21465. /*! export 5144 [provided] [no usage info] [missing usage info prevents renaming] */
  21466. /*! export 5145 [provided] [no usage info] [missing usage info prevents renaming] */
  21467. /*! export 5146 [provided] [no usage info] [missing usage info prevents renaming] */
  21468. /*! export 5147 [provided] [no usage info] [missing usage info prevents renaming] */
  21469. /*! export 5148 [provided] [no usage info] [missing usage info prevents renaming] */
  21470. /*! export 5149 [provided] [no usage info] [missing usage info prevents renaming] */
  21471. /*! export 515 [provided] [no usage info] [missing usage info prevents renaming] */
  21472. /*! export 5150 [provided] [no usage info] [missing usage info prevents renaming] */
  21473. /*! export 5151 [provided] [no usage info] [missing usage info prevents renaming] */
  21474. /*! export 5152 [provided] [no usage info] [missing usage info prevents renaming] */
  21475. /*! export 5153 [provided] [no usage info] [missing usage info prevents renaming] */
  21476. /*! export 5154 [provided] [no usage info] [missing usage info prevents renaming] */
  21477. /*! export 5155 [provided] [no usage info] [missing usage info prevents renaming] */
  21478. /*! export 5156 [provided] [no usage info] [missing usage info prevents renaming] */
  21479. /*! export 5157 [provided] [no usage info] [missing usage info prevents renaming] */
  21480. /*! export 5158 [provided] [no usage info] [missing usage info prevents renaming] */
  21481. /*! export 5159 [provided] [no usage info] [missing usage info prevents renaming] */
  21482. /*! export 516 [provided] [no usage info] [missing usage info prevents renaming] */
  21483. /*! export 5160 [provided] [no usage info] [missing usage info prevents renaming] */
  21484. /*! export 5161 [provided] [no usage info] [missing usage info prevents renaming] */
  21485. /*! export 5162 [provided] [no usage info] [missing usage info prevents renaming] */
  21486. /*! export 5163 [provided] [no usage info] [missing usage info prevents renaming] */
  21487. /*! export 5164 [provided] [no usage info] [missing usage info prevents renaming] */
  21488. /*! export 5165 [provided] [no usage info] [missing usage info prevents renaming] */
  21489. /*! export 5166 [provided] [no usage info] [missing usage info prevents renaming] */
  21490. /*! export 5167 [provided] [no usage info] [missing usage info prevents renaming] */
  21491. /*! export 5168 [provided] [no usage info] [missing usage info prevents renaming] */
  21492. /*! export 5169 [provided] [no usage info] [missing usage info prevents renaming] */
  21493. /*! export 517 [provided] [no usage info] [missing usage info prevents renaming] */
  21494. /*! export 5170 [provided] [no usage info] [missing usage info prevents renaming] */
  21495. /*! export 5171 [provided] [no usage info] [missing usage info prevents renaming] */
  21496. /*! export 5172 [provided] [no usage info] [missing usage info prevents renaming] */
  21497. /*! export 5173 [provided] [no usage info] [missing usage info prevents renaming] */
  21498. /*! export 5174 [provided] [no usage info] [missing usage info prevents renaming] */
  21499. /*! export 5175 [provided] [no usage info] [missing usage info prevents renaming] */
  21500. /*! export 5176 [provided] [no usage info] [missing usage info prevents renaming] */
  21501. /*! export 5177 [provided] [no usage info] [missing usage info prevents renaming] */
  21502. /*! export 5178 [provided] [no usage info] [missing usage info prevents renaming] */
  21503. /*! export 5179 [provided] [no usage info] [missing usage info prevents renaming] */
  21504. /*! export 518 [provided] [no usage info] [missing usage info prevents renaming] */
  21505. /*! export 5180 [provided] [no usage info] [missing usage info prevents renaming] */
  21506. /*! export 5181 [provided] [no usage info] [missing usage info prevents renaming] */
  21507. /*! export 5182 [provided] [no usage info] [missing usage info prevents renaming] */
  21508. /*! export 5183 [provided] [no usage info] [missing usage info prevents renaming] */
  21509. /*! export 5184 [provided] [no usage info] [missing usage info prevents renaming] */
  21510. /*! export 5185 [provided] [no usage info] [missing usage info prevents renaming] */
  21511. /*! export 5186 [provided] [no usage info] [missing usage info prevents renaming] */
  21512. /*! export 5187 [provided] [no usage info] [missing usage info prevents renaming] */
  21513. /*! export 5188 [provided] [no usage info] [missing usage info prevents renaming] */
  21514. /*! export 5189 [provided] [no usage info] [missing usage info prevents renaming] */
  21515. /*! export 519 [provided] [no usage info] [missing usage info prevents renaming] */
  21516. /*! export 5190 [provided] [no usage info] [missing usage info prevents renaming] */
  21517. /*! export 5191 [provided] [no usage info] [missing usage info prevents renaming] */
  21518. /*! export 5192 [provided] [no usage info] [missing usage info prevents renaming] */
  21519. /*! export 5193 [provided] [no usage info] [missing usage info prevents renaming] */
  21520. /*! export 5194 [provided] [no usage info] [missing usage info prevents renaming] */
  21521. /*! export 5195 [provided] [no usage info] [missing usage info prevents renaming] */
  21522. /*! export 5196 [provided] [no usage info] [missing usage info prevents renaming] */
  21523. /*! export 5197 [provided] [no usage info] [missing usage info prevents renaming] */
  21524. /*! export 5198 [provided] [no usage info] [missing usage info prevents renaming] */
  21525. /*! export 5199 [provided] [no usage info] [missing usage info prevents renaming] */
  21526. /*! export 52 [provided] [no usage info] [missing usage info prevents renaming] */
  21527. /*! export 520 [provided] [no usage info] [missing usage info prevents renaming] */
  21528. /*! export 5200 [provided] [no usage info] [missing usage info prevents renaming] */
  21529. /*! export 5201 [provided] [no usage info] [missing usage info prevents renaming] */
  21530. /*! export 5202 [provided] [no usage info] [missing usage info prevents renaming] */
  21531. /*! export 5203 [provided] [no usage info] [missing usage info prevents renaming] */
  21532. /*! export 5204 [provided] [no usage info] [missing usage info prevents renaming] */
  21533. /*! export 5205 [provided] [no usage info] [missing usage info prevents renaming] */
  21534. /*! export 5206 [provided] [no usage info] [missing usage info prevents renaming] */
  21535. /*! export 5207 [provided] [no usage info] [missing usage info prevents renaming] */
  21536. /*! export 5208 [provided] [no usage info] [missing usage info prevents renaming] */
  21537. /*! export 5209 [provided] [no usage info] [missing usage info prevents renaming] */
  21538. /*! export 521 [provided] [no usage info] [missing usage info prevents renaming] */
  21539. /*! export 5210 [provided] [no usage info] [missing usage info prevents renaming] */
  21540. /*! export 5211 [provided] [no usage info] [missing usage info prevents renaming] */
  21541. /*! export 5212 [provided] [no usage info] [missing usage info prevents renaming] */
  21542. /*! export 5213 [provided] [no usage info] [missing usage info prevents renaming] */
  21543. /*! export 5214 [provided] [no usage info] [missing usage info prevents renaming] */
  21544. /*! export 5215 [provided] [no usage info] [missing usage info prevents renaming] */
  21545. /*! export 5216 [provided] [no usage info] [missing usage info prevents renaming] */
  21546. /*! export 5217 [provided] [no usage info] [missing usage info prevents renaming] */
  21547. /*! export 5218 [provided] [no usage info] [missing usage info prevents renaming] */
  21548. /*! export 5219 [provided] [no usage info] [missing usage info prevents renaming] */
  21549. /*! export 522 [provided] [no usage info] [missing usage info prevents renaming] */
  21550. /*! export 5220 [provided] [no usage info] [missing usage info prevents renaming] */
  21551. /*! export 5221 [provided] [no usage info] [missing usage info prevents renaming] */
  21552. /*! export 5222 [provided] [no usage info] [missing usage info prevents renaming] */
  21553. /*! export 5223 [provided] [no usage info] [missing usage info prevents renaming] */
  21554. /*! export 5224 [provided] [no usage info] [missing usage info prevents renaming] */
  21555. /*! export 5225 [provided] [no usage info] [missing usage info prevents renaming] */
  21556. /*! export 5226 [provided] [no usage info] [missing usage info prevents renaming] */
  21557. /*! export 5227 [provided] [no usage info] [missing usage info prevents renaming] */
  21558. /*! export 5228 [provided] [no usage info] [missing usage info prevents renaming] */
  21559. /*! export 5229 [provided] [no usage info] [missing usage info prevents renaming] */
  21560. /*! export 523 [provided] [no usage info] [missing usage info prevents renaming] */
  21561. /*! export 5230 [provided] [no usage info] [missing usage info prevents renaming] */
  21562. /*! export 5231 [provided] [no usage info] [missing usage info prevents renaming] */
  21563. /*! export 5232 [provided] [no usage info] [missing usage info prevents renaming] */
  21564. /*! export 5233 [provided] [no usage info] [missing usage info prevents renaming] */
  21565. /*! export 5234 [provided] [no usage info] [missing usage info prevents renaming] */
  21566. /*! export 5235 [provided] [no usage info] [missing usage info prevents renaming] */
  21567. /*! export 5236 [provided] [no usage info] [missing usage info prevents renaming] */
  21568. /*! export 5237 [provided] [no usage info] [missing usage info prevents renaming] */
  21569. /*! export 5238 [provided] [no usage info] [missing usage info prevents renaming] */
  21570. /*! export 5239 [provided] [no usage info] [missing usage info prevents renaming] */
  21571. /*! export 524 [provided] [no usage info] [missing usage info prevents renaming] */
  21572. /*! export 5240 [provided] [no usage info] [missing usage info prevents renaming] */
  21573. /*! export 5241 [provided] [no usage info] [missing usage info prevents renaming] */
  21574. /*! export 5242 [provided] [no usage info] [missing usage info prevents renaming] */
  21575. /*! export 5243 [provided] [no usage info] [missing usage info prevents renaming] */
  21576. /*! export 5244 [provided] [no usage info] [missing usage info prevents renaming] */
  21577. /*! export 5245 [provided] [no usage info] [missing usage info prevents renaming] */
  21578. /*! export 5246 [provided] [no usage info] [missing usage info prevents renaming] */
  21579. /*! export 5247 [provided] [no usage info] [missing usage info prevents renaming] */
  21580. /*! export 5248 [provided] [no usage info] [missing usage info prevents renaming] */
  21581. /*! export 5249 [provided] [no usage info] [missing usage info prevents renaming] */
  21582. /*! export 525 [provided] [no usage info] [missing usage info prevents renaming] */
  21583. /*! export 5250 [provided] [no usage info] [missing usage info prevents renaming] */
  21584. /*! export 5251 [provided] [no usage info] [missing usage info prevents renaming] */
  21585. /*! export 5252 [provided] [no usage info] [missing usage info prevents renaming] */
  21586. /*! export 5253 [provided] [no usage info] [missing usage info prevents renaming] */
  21587. /*! export 5254 [provided] [no usage info] [missing usage info prevents renaming] */
  21588. /*! export 5255 [provided] [no usage info] [missing usage info prevents renaming] */
  21589. /*! export 5256 [provided] [no usage info] [missing usage info prevents renaming] */
  21590. /*! export 5257 [provided] [no usage info] [missing usage info prevents renaming] */
  21591. /*! export 5258 [provided] [no usage info] [missing usage info prevents renaming] */
  21592. /*! export 5259 [provided] [no usage info] [missing usage info prevents renaming] */
  21593. /*! export 526 [provided] [no usage info] [missing usage info prevents renaming] */
  21594. /*! export 5260 [provided] [no usage info] [missing usage info prevents renaming] */
  21595. /*! export 5261 [provided] [no usage info] [missing usage info prevents renaming] */
  21596. /*! export 5262 [provided] [no usage info] [missing usage info prevents renaming] */
  21597. /*! export 5263 [provided] [no usage info] [missing usage info prevents renaming] */
  21598. /*! export 5264 [provided] [no usage info] [missing usage info prevents renaming] */
  21599. /*! export 5265 [provided] [no usage info] [missing usage info prevents renaming] */
  21600. /*! export 5266 [provided] [no usage info] [missing usage info prevents renaming] */
  21601. /*! export 5267 [provided] [no usage info] [missing usage info prevents renaming] */
  21602. /*! export 5268 [provided] [no usage info] [missing usage info prevents renaming] */
  21603. /*! export 5269 [provided] [no usage info] [missing usage info prevents renaming] */
  21604. /*! export 527 [provided] [no usage info] [missing usage info prevents renaming] */
  21605. /*! export 5270 [provided] [no usage info] [missing usage info prevents renaming] */
  21606. /*! export 5271 [provided] [no usage info] [missing usage info prevents renaming] */
  21607. /*! export 5272 [provided] [no usage info] [missing usage info prevents renaming] */
  21608. /*! export 5273 [provided] [no usage info] [missing usage info prevents renaming] */
  21609. /*! export 5274 [provided] [no usage info] [missing usage info prevents renaming] */
  21610. /*! export 5275 [provided] [no usage info] [missing usage info prevents renaming] */
  21611. /*! export 5276 [provided] [no usage info] [missing usage info prevents renaming] */
  21612. /*! export 5277 [provided] [no usage info] [missing usage info prevents renaming] */
  21613. /*! export 5278 [provided] [no usage info] [missing usage info prevents renaming] */
  21614. /*! export 5279 [provided] [no usage info] [missing usage info prevents renaming] */
  21615. /*! export 528 [provided] [no usage info] [missing usage info prevents renaming] */
  21616. /*! export 5280 [provided] [no usage info] [missing usage info prevents renaming] */
  21617. /*! export 5281 [provided] [no usage info] [missing usage info prevents renaming] */
  21618. /*! export 5282 [provided] [no usage info] [missing usage info prevents renaming] */
  21619. /*! export 5283 [provided] [no usage info] [missing usage info prevents renaming] */
  21620. /*! export 5284 [provided] [no usage info] [missing usage info prevents renaming] */
  21621. /*! export 5285 [provided] [no usage info] [missing usage info prevents renaming] */
  21622. /*! export 5286 [provided] [no usage info] [missing usage info prevents renaming] */
  21623. /*! export 5287 [provided] [no usage info] [missing usage info prevents renaming] */
  21624. /*! export 5288 [provided] [no usage info] [missing usage info prevents renaming] */
  21625. /*! export 5289 [provided] [no usage info] [missing usage info prevents renaming] */
  21626. /*! export 529 [provided] [no usage info] [missing usage info prevents renaming] */
  21627. /*! export 5290 [provided] [no usage info] [missing usage info prevents renaming] */
  21628. /*! export 5291 [provided] [no usage info] [missing usage info prevents renaming] */
  21629. /*! export 5292 [provided] [no usage info] [missing usage info prevents renaming] */
  21630. /*! export 5293 [provided] [no usage info] [missing usage info prevents renaming] */
  21631. /*! export 5294 [provided] [no usage info] [missing usage info prevents renaming] */
  21632. /*! export 5295 [provided] [no usage info] [missing usage info prevents renaming] */
  21633. /*! export 5296 [provided] [no usage info] [missing usage info prevents renaming] */
  21634. /*! export 5297 [provided] [no usage info] [missing usage info prevents renaming] */
  21635. /*! export 5298 [provided] [no usage info] [missing usage info prevents renaming] */
  21636. /*! export 5299 [provided] [no usage info] [missing usage info prevents renaming] */
  21637. /*! export 53 [provided] [no usage info] [missing usage info prevents renaming] */
  21638. /*! export 530 [provided] [no usage info] [missing usage info prevents renaming] */
  21639. /*! export 5300 [provided] [no usage info] [missing usage info prevents renaming] */
  21640. /*! export 5301 [provided] [no usage info] [missing usage info prevents renaming] */
  21641. /*! export 5302 [provided] [no usage info] [missing usage info prevents renaming] */
  21642. /*! export 5303 [provided] [no usage info] [missing usage info prevents renaming] */
  21643. /*! export 5304 [provided] [no usage info] [missing usage info prevents renaming] */
  21644. /*! export 5305 [provided] [no usage info] [missing usage info prevents renaming] */
  21645. /*! export 5306 [provided] [no usage info] [missing usage info prevents renaming] */
  21646. /*! export 5307 [provided] [no usage info] [missing usage info prevents renaming] */
  21647. /*! export 5308 [provided] [no usage info] [missing usage info prevents renaming] */
  21648. /*! export 5309 [provided] [no usage info] [missing usage info prevents renaming] */
  21649. /*! export 531 [provided] [no usage info] [missing usage info prevents renaming] */
  21650. /*! export 5310 [provided] [no usage info] [missing usage info prevents renaming] */
  21651. /*! export 5311 [provided] [no usage info] [missing usage info prevents renaming] */
  21652. /*! export 5312 [provided] [no usage info] [missing usage info prevents renaming] */
  21653. /*! export 5313 [provided] [no usage info] [missing usage info prevents renaming] */
  21654. /*! export 5314 [provided] [no usage info] [missing usage info prevents renaming] */
  21655. /*! export 5315 [provided] [no usage info] [missing usage info prevents renaming] */
  21656. /*! export 5316 [provided] [no usage info] [missing usage info prevents renaming] */
  21657. /*! export 5317 [provided] [no usage info] [missing usage info prevents renaming] */
  21658. /*! export 5318 [provided] [no usage info] [missing usage info prevents renaming] */
  21659. /*! export 5319 [provided] [no usage info] [missing usage info prevents renaming] */
  21660. /*! export 532 [provided] [no usage info] [missing usage info prevents renaming] */
  21661. /*! export 5320 [provided] [no usage info] [missing usage info prevents renaming] */
  21662. /*! export 5321 [provided] [no usage info] [missing usage info prevents renaming] */
  21663. /*! export 5322 [provided] [no usage info] [missing usage info prevents renaming] */
  21664. /*! export 5323 [provided] [no usage info] [missing usage info prevents renaming] */
  21665. /*! export 5324 [provided] [no usage info] [missing usage info prevents renaming] */
  21666. /*! export 5325 [provided] [no usage info] [missing usage info prevents renaming] */
  21667. /*! export 5326 [provided] [no usage info] [missing usage info prevents renaming] */
  21668. /*! export 5327 [provided] [no usage info] [missing usage info prevents renaming] */
  21669. /*! export 5328 [provided] [no usage info] [missing usage info prevents renaming] */
  21670. /*! export 5329 [provided] [no usage info] [missing usage info prevents renaming] */
  21671. /*! export 533 [provided] [no usage info] [missing usage info prevents renaming] */
  21672. /*! export 5330 [provided] [no usage info] [missing usage info prevents renaming] */
  21673. /*! export 5331 [provided] [no usage info] [missing usage info prevents renaming] */
  21674. /*! export 5332 [provided] [no usage info] [missing usage info prevents renaming] */
  21675. /*! export 5333 [provided] [no usage info] [missing usage info prevents renaming] */
  21676. /*! export 5334 [provided] [no usage info] [missing usage info prevents renaming] */
  21677. /*! export 5335 [provided] [no usage info] [missing usage info prevents renaming] */
  21678. /*! export 5336 [provided] [no usage info] [missing usage info prevents renaming] */
  21679. /*! export 5337 [provided] [no usage info] [missing usage info prevents renaming] */
  21680. /*! export 5338 [provided] [no usage info] [missing usage info prevents renaming] */
  21681. /*! export 5339 [provided] [no usage info] [missing usage info prevents renaming] */
  21682. /*! export 534 [provided] [no usage info] [missing usage info prevents renaming] */
  21683. /*! export 5340 [provided] [no usage info] [missing usage info prevents renaming] */
  21684. /*! export 5341 [provided] [no usage info] [missing usage info prevents renaming] */
  21685. /*! export 5342 [provided] [no usage info] [missing usage info prevents renaming] */
  21686. /*! export 5343 [provided] [no usage info] [missing usage info prevents renaming] */
  21687. /*! export 5344 [provided] [no usage info] [missing usage info prevents renaming] */
  21688. /*! export 5345 [provided] [no usage info] [missing usage info prevents renaming] */
  21689. /*! export 5346 [provided] [no usage info] [missing usage info prevents renaming] */
  21690. /*! export 5347 [provided] [no usage info] [missing usage info prevents renaming] */
  21691. /*! export 5348 [provided] [no usage info] [missing usage info prevents renaming] */
  21692. /*! export 5349 [provided] [no usage info] [missing usage info prevents renaming] */
  21693. /*! export 535 [provided] [no usage info] [missing usage info prevents renaming] */
  21694. /*! export 5350 [provided] [no usage info] [missing usage info prevents renaming] */
  21695. /*! export 5351 [provided] [no usage info] [missing usage info prevents renaming] */
  21696. /*! export 5352 [provided] [no usage info] [missing usage info prevents renaming] */
  21697. /*! export 5353 [provided] [no usage info] [missing usage info prevents renaming] */
  21698. /*! export 5354 [provided] [no usage info] [missing usage info prevents renaming] */
  21699. /*! export 5355 [provided] [no usage info] [missing usage info prevents renaming] */
  21700. /*! export 5356 [provided] [no usage info] [missing usage info prevents renaming] */
  21701. /*! export 5357 [provided] [no usage info] [missing usage info prevents renaming] */
  21702. /*! export 5358 [provided] [no usage info] [missing usage info prevents renaming] */
  21703. /*! export 5359 [provided] [no usage info] [missing usage info prevents renaming] */
  21704. /*! export 536 [provided] [no usage info] [missing usage info prevents renaming] */
  21705. /*! export 5360 [provided] [no usage info] [missing usage info prevents renaming] */
  21706. /*! export 5361 [provided] [no usage info] [missing usage info prevents renaming] */
  21707. /*! export 5362 [provided] [no usage info] [missing usage info prevents renaming] */
  21708. /*! export 5363 [provided] [no usage info] [missing usage info prevents renaming] */
  21709. /*! export 5364 [provided] [no usage info] [missing usage info prevents renaming] */
  21710. /*! export 5365 [provided] [no usage info] [missing usage info prevents renaming] */
  21711. /*! export 5366 [provided] [no usage info] [missing usage info prevents renaming] */
  21712. /*! export 5367 [provided] [no usage info] [missing usage info prevents renaming] */
  21713. /*! export 5368 [provided] [no usage info] [missing usage info prevents renaming] */
  21714. /*! export 5369 [provided] [no usage info] [missing usage info prevents renaming] */
  21715. /*! export 537 [provided] [no usage info] [missing usage info prevents renaming] */
  21716. /*! export 5370 [provided] [no usage info] [missing usage info prevents renaming] */
  21717. /*! export 5371 [provided] [no usage info] [missing usage info prevents renaming] */
  21718. /*! export 5372 [provided] [no usage info] [missing usage info prevents renaming] */
  21719. /*! export 5373 [provided] [no usage info] [missing usage info prevents renaming] */
  21720. /*! export 5374 [provided] [no usage info] [missing usage info prevents renaming] */
  21721. /*! export 5375 [provided] [no usage info] [missing usage info prevents renaming] */
  21722. /*! export 5376 [provided] [no usage info] [missing usage info prevents renaming] */
  21723. /*! export 5377 [provided] [no usage info] [missing usage info prevents renaming] */
  21724. /*! export 5378 [provided] [no usage info] [missing usage info prevents renaming] */
  21725. /*! export 5379 [provided] [no usage info] [missing usage info prevents renaming] */
  21726. /*! export 538 [provided] [no usage info] [missing usage info prevents renaming] */
  21727. /*! export 5380 [provided] [no usage info] [missing usage info prevents renaming] */
  21728. /*! export 5381 [provided] [no usage info] [missing usage info prevents renaming] */
  21729. /*! export 5382 [provided] [no usage info] [missing usage info prevents renaming] */
  21730. /*! export 5383 [provided] [no usage info] [missing usage info prevents renaming] */
  21731. /*! export 5384 [provided] [no usage info] [missing usage info prevents renaming] */
  21732. /*! export 5385 [provided] [no usage info] [missing usage info prevents renaming] */
  21733. /*! export 5386 [provided] [no usage info] [missing usage info prevents renaming] */
  21734. /*! export 5387 [provided] [no usage info] [missing usage info prevents renaming] */
  21735. /*! export 5388 [provided] [no usage info] [missing usage info prevents renaming] */
  21736. /*! export 5389 [provided] [no usage info] [missing usage info prevents renaming] */
  21737. /*! export 539 [provided] [no usage info] [missing usage info prevents renaming] */
  21738. /*! export 5390 [provided] [no usage info] [missing usage info prevents renaming] */
  21739. /*! export 5391 [provided] [no usage info] [missing usage info prevents renaming] */
  21740. /*! export 5392 [provided] [no usage info] [missing usage info prevents renaming] */
  21741. /*! export 5393 [provided] [no usage info] [missing usage info prevents renaming] */
  21742. /*! export 5394 [provided] [no usage info] [missing usage info prevents renaming] */
  21743. /*! export 5395 [provided] [no usage info] [missing usage info prevents renaming] */
  21744. /*! export 5396 [provided] [no usage info] [missing usage info prevents renaming] */
  21745. /*! export 5397 [provided] [no usage info] [missing usage info prevents renaming] */
  21746. /*! export 5398 [provided] [no usage info] [missing usage info prevents renaming] */
  21747. /*! export 5399 [provided] [no usage info] [missing usage info prevents renaming] */
  21748. /*! export 54 [provided] [no usage info] [missing usage info prevents renaming] */
  21749. /*! export 540 [provided] [no usage info] [missing usage info prevents renaming] */
  21750. /*! export 5400 [provided] [no usage info] [missing usage info prevents renaming] */
  21751. /*! export 5401 [provided] [no usage info] [missing usage info prevents renaming] */
  21752. /*! export 5402 [provided] [no usage info] [missing usage info prevents renaming] */
  21753. /*! export 5403 [provided] [no usage info] [missing usage info prevents renaming] */
  21754. /*! export 5404 [provided] [no usage info] [missing usage info prevents renaming] */
  21755. /*! export 5405 [provided] [no usage info] [missing usage info prevents renaming] */
  21756. /*! export 5406 [provided] [no usage info] [missing usage info prevents renaming] */
  21757. /*! export 5407 [provided] [no usage info] [missing usage info prevents renaming] */
  21758. /*! export 5408 [provided] [no usage info] [missing usage info prevents renaming] */
  21759. /*! export 5409 [provided] [no usage info] [missing usage info prevents renaming] */
  21760. /*! export 541 [provided] [no usage info] [missing usage info prevents renaming] */
  21761. /*! export 5410 [provided] [no usage info] [missing usage info prevents renaming] */
  21762. /*! export 5411 [provided] [no usage info] [missing usage info prevents renaming] */
  21763. /*! export 5412 [provided] [no usage info] [missing usage info prevents renaming] */
  21764. /*! export 5413 [provided] [no usage info] [missing usage info prevents renaming] */
  21765. /*! export 5414 [provided] [no usage info] [missing usage info prevents renaming] */
  21766. /*! export 5415 [provided] [no usage info] [missing usage info prevents renaming] */
  21767. /*! export 5416 [provided] [no usage info] [missing usage info prevents renaming] */
  21768. /*! export 5417 [provided] [no usage info] [missing usage info prevents renaming] */
  21769. /*! export 5418 [provided] [no usage info] [missing usage info prevents renaming] */
  21770. /*! export 5419 [provided] [no usage info] [missing usage info prevents renaming] */
  21771. /*! export 542 [provided] [no usage info] [missing usage info prevents renaming] */
  21772. /*! export 5420 [provided] [no usage info] [missing usage info prevents renaming] */
  21773. /*! export 5421 [provided] [no usage info] [missing usage info prevents renaming] */
  21774. /*! export 5422 [provided] [no usage info] [missing usage info prevents renaming] */
  21775. /*! export 5423 [provided] [no usage info] [missing usage info prevents renaming] */
  21776. /*! export 5424 [provided] [no usage info] [missing usage info prevents renaming] */
  21777. /*! export 5425 [provided] [no usage info] [missing usage info prevents renaming] */
  21778. /*! export 5426 [provided] [no usage info] [missing usage info prevents renaming] */
  21779. /*! export 5427 [provided] [no usage info] [missing usage info prevents renaming] */
  21780. /*! export 5428 [provided] [no usage info] [missing usage info prevents renaming] */
  21781. /*! export 5429 [provided] [no usage info] [missing usage info prevents renaming] */
  21782. /*! export 543 [provided] [no usage info] [missing usage info prevents renaming] */
  21783. /*! export 5430 [provided] [no usage info] [missing usage info prevents renaming] */
  21784. /*! export 5431 [provided] [no usage info] [missing usage info prevents renaming] */
  21785. /*! export 5432 [provided] [no usage info] [missing usage info prevents renaming] */
  21786. /*! export 5433 [provided] [no usage info] [missing usage info prevents renaming] */
  21787. /*! export 5434 [provided] [no usage info] [missing usage info prevents renaming] */
  21788. /*! export 5435 [provided] [no usage info] [missing usage info prevents renaming] */
  21789. /*! export 5436 [provided] [no usage info] [missing usage info prevents renaming] */
  21790. /*! export 5437 [provided] [no usage info] [missing usage info prevents renaming] */
  21791. /*! export 5438 [provided] [no usage info] [missing usage info prevents renaming] */
  21792. /*! export 5439 [provided] [no usage info] [missing usage info prevents renaming] */
  21793. /*! export 544 [provided] [no usage info] [missing usage info prevents renaming] */
  21794. /*! export 5440 [provided] [no usage info] [missing usage info prevents renaming] */
  21795. /*! export 5441 [provided] [no usage info] [missing usage info prevents renaming] */
  21796. /*! export 5442 [provided] [no usage info] [missing usage info prevents renaming] */
  21797. /*! export 5443 [provided] [no usage info] [missing usage info prevents renaming] */
  21798. /*! export 5444 [provided] [no usage info] [missing usage info prevents renaming] */
  21799. /*! export 5445 [provided] [no usage info] [missing usage info prevents renaming] */
  21800. /*! export 5446 [provided] [no usage info] [missing usage info prevents renaming] */
  21801. /*! export 5447 [provided] [no usage info] [missing usage info prevents renaming] */
  21802. /*! export 5448 [provided] [no usage info] [missing usage info prevents renaming] */
  21803. /*! export 5449 [provided] [no usage info] [missing usage info prevents renaming] */
  21804. /*! export 545 [provided] [no usage info] [missing usage info prevents renaming] */
  21805. /*! export 5450 [provided] [no usage info] [missing usage info prevents renaming] */
  21806. /*! export 5451 [provided] [no usage info] [missing usage info prevents renaming] */
  21807. /*! export 5452 [provided] [no usage info] [missing usage info prevents renaming] */
  21808. /*! export 5453 [provided] [no usage info] [missing usage info prevents renaming] */
  21809. /*! export 5454 [provided] [no usage info] [missing usage info prevents renaming] */
  21810. /*! export 5455 [provided] [no usage info] [missing usage info prevents renaming] */
  21811. /*! export 5456 [provided] [no usage info] [missing usage info prevents renaming] */
  21812. /*! export 5457 [provided] [no usage info] [missing usage info prevents renaming] */
  21813. /*! export 5458 [provided] [no usage info] [missing usage info prevents renaming] */
  21814. /*! export 5459 [provided] [no usage info] [missing usage info prevents renaming] */
  21815. /*! export 546 [provided] [no usage info] [missing usage info prevents renaming] */
  21816. /*! export 5460 [provided] [no usage info] [missing usage info prevents renaming] */
  21817. /*! export 5461 [provided] [no usage info] [missing usage info prevents renaming] */
  21818. /*! export 5462 [provided] [no usage info] [missing usage info prevents renaming] */
  21819. /*! export 5463 [provided] [no usage info] [missing usage info prevents renaming] */
  21820. /*! export 5464 [provided] [no usage info] [missing usage info prevents renaming] */
  21821. /*! export 5465 [provided] [no usage info] [missing usage info prevents renaming] */
  21822. /*! export 5466 [provided] [no usage info] [missing usage info prevents renaming] */
  21823. /*! export 5467 [provided] [no usage info] [missing usage info prevents renaming] */
  21824. /*! export 5468 [provided] [no usage info] [missing usage info prevents renaming] */
  21825. /*! export 5469 [provided] [no usage info] [missing usage info prevents renaming] */
  21826. /*! export 547 [provided] [no usage info] [missing usage info prevents renaming] */
  21827. /*! export 5470 [provided] [no usage info] [missing usage info prevents renaming] */
  21828. /*! export 5471 [provided] [no usage info] [missing usage info prevents renaming] */
  21829. /*! export 5472 [provided] [no usage info] [missing usage info prevents renaming] */
  21830. /*! export 5473 [provided] [no usage info] [missing usage info prevents renaming] */
  21831. /*! export 5474 [provided] [no usage info] [missing usage info prevents renaming] */
  21832. /*! export 5475 [provided] [no usage info] [missing usage info prevents renaming] */
  21833. /*! export 5476 [provided] [no usage info] [missing usage info prevents renaming] */
  21834. /*! export 5477 [provided] [no usage info] [missing usage info prevents renaming] */
  21835. /*! export 5478 [provided] [no usage info] [missing usage info prevents renaming] */
  21836. /*! export 5479 [provided] [no usage info] [missing usage info prevents renaming] */
  21837. /*! export 548 [provided] [no usage info] [missing usage info prevents renaming] */
  21838. /*! export 5480 [provided] [no usage info] [missing usage info prevents renaming] */
  21839. /*! export 5481 [provided] [no usage info] [missing usage info prevents renaming] */
  21840. /*! export 5482 [provided] [no usage info] [missing usage info prevents renaming] */
  21841. /*! export 5483 [provided] [no usage info] [missing usage info prevents renaming] */
  21842. /*! export 5484 [provided] [no usage info] [missing usage info prevents renaming] */
  21843. /*! export 5485 [provided] [no usage info] [missing usage info prevents renaming] */
  21844. /*! export 5486 [provided] [no usage info] [missing usage info prevents renaming] */
  21845. /*! export 5487 [provided] [no usage info] [missing usage info prevents renaming] */
  21846. /*! export 5488 [provided] [no usage info] [missing usage info prevents renaming] */
  21847. /*! export 5489 [provided] [no usage info] [missing usage info prevents renaming] */
  21848. /*! export 549 [provided] [no usage info] [missing usage info prevents renaming] */
  21849. /*! export 5490 [provided] [no usage info] [missing usage info prevents renaming] */
  21850. /*! export 5491 [provided] [no usage info] [missing usage info prevents renaming] */
  21851. /*! export 5492 [provided] [no usage info] [missing usage info prevents renaming] */
  21852. /*! export 5493 [provided] [no usage info] [missing usage info prevents renaming] */
  21853. /*! export 5494 [provided] [no usage info] [missing usage info prevents renaming] */
  21854. /*! export 5495 [provided] [no usage info] [missing usage info prevents renaming] */
  21855. /*! export 5496 [provided] [no usage info] [missing usage info prevents renaming] */
  21856. /*! export 5497 [provided] [no usage info] [missing usage info prevents renaming] */
  21857. /*! export 5498 [provided] [no usage info] [missing usage info prevents renaming] */
  21858. /*! export 5499 [provided] [no usage info] [missing usage info prevents renaming] */
  21859. /*! export 55 [provided] [no usage info] [missing usage info prevents renaming] */
  21860. /*! export 550 [provided] [no usage info] [missing usage info prevents renaming] */
  21861. /*! export 5500 [provided] [no usage info] [missing usage info prevents renaming] */
  21862. /*! export 5501 [provided] [no usage info] [missing usage info prevents renaming] */
  21863. /*! export 5502 [provided] [no usage info] [missing usage info prevents renaming] */
  21864. /*! export 5503 [provided] [no usage info] [missing usage info prevents renaming] */
  21865. /*! export 5504 [provided] [no usage info] [missing usage info prevents renaming] */
  21866. /*! export 5505 [provided] [no usage info] [missing usage info prevents renaming] */
  21867. /*! export 5506 [provided] [no usage info] [missing usage info prevents renaming] */
  21868. /*! export 5507 [provided] [no usage info] [missing usage info prevents renaming] */
  21869. /*! export 5508 [provided] [no usage info] [missing usage info prevents renaming] */
  21870. /*! export 5509 [provided] [no usage info] [missing usage info prevents renaming] */
  21871. /*! export 551 [provided] [no usage info] [missing usage info prevents renaming] */
  21872. /*! export 5510 [provided] [no usage info] [missing usage info prevents renaming] */
  21873. /*! export 5511 [provided] [no usage info] [missing usage info prevents renaming] */
  21874. /*! export 5512 [provided] [no usage info] [missing usage info prevents renaming] */
  21875. /*! export 5513 [provided] [no usage info] [missing usage info prevents renaming] */
  21876. /*! export 5514 [provided] [no usage info] [missing usage info prevents renaming] */
  21877. /*! export 5515 [provided] [no usage info] [missing usage info prevents renaming] */
  21878. /*! export 5516 [provided] [no usage info] [missing usage info prevents renaming] */
  21879. /*! export 5517 [provided] [no usage info] [missing usage info prevents renaming] */
  21880. /*! export 5518 [provided] [no usage info] [missing usage info prevents renaming] */
  21881. /*! export 5519 [provided] [no usage info] [missing usage info prevents renaming] */
  21882. /*! export 552 [provided] [no usage info] [missing usage info prevents renaming] */
  21883. /*! export 5520 [provided] [no usage info] [missing usage info prevents renaming] */
  21884. /*! export 5521 [provided] [no usage info] [missing usage info prevents renaming] */
  21885. /*! export 5522 [provided] [no usage info] [missing usage info prevents renaming] */
  21886. /*! export 5523 [provided] [no usage info] [missing usage info prevents renaming] */
  21887. /*! export 5524 [provided] [no usage info] [missing usage info prevents renaming] */
  21888. /*! export 5525 [provided] [no usage info] [missing usage info prevents renaming] */
  21889. /*! export 5526 [provided] [no usage info] [missing usage info prevents renaming] */
  21890. /*! export 5527 [provided] [no usage info] [missing usage info prevents renaming] */
  21891. /*! export 5528 [provided] [no usage info] [missing usage info prevents renaming] */
  21892. /*! export 5529 [provided] [no usage info] [missing usage info prevents renaming] */
  21893. /*! export 553 [provided] [no usage info] [missing usage info prevents renaming] */
  21894. /*! export 5530 [provided] [no usage info] [missing usage info prevents renaming] */
  21895. /*! export 5531 [provided] [no usage info] [missing usage info prevents renaming] */
  21896. /*! export 5532 [provided] [no usage info] [missing usage info prevents renaming] */
  21897. /*! export 5533 [provided] [no usage info] [missing usage info prevents renaming] */
  21898. /*! export 5534 [provided] [no usage info] [missing usage info prevents renaming] */
  21899. /*! export 5535 [provided] [no usage info] [missing usage info prevents renaming] */
  21900. /*! export 5536 [provided] [no usage info] [missing usage info prevents renaming] */
  21901. /*! export 5537 [provided] [no usage info] [missing usage info prevents renaming] */
  21902. /*! export 5538 [provided] [no usage info] [missing usage info prevents renaming] */
  21903. /*! export 5539 [provided] [no usage info] [missing usage info prevents renaming] */
  21904. /*! export 554 [provided] [no usage info] [missing usage info prevents renaming] */
  21905. /*! export 5540 [provided] [no usage info] [missing usage info prevents renaming] */
  21906. /*! export 5541 [provided] [no usage info] [missing usage info prevents renaming] */
  21907. /*! export 5542 [provided] [no usage info] [missing usage info prevents renaming] */
  21908. /*! export 5543 [provided] [no usage info] [missing usage info prevents renaming] */
  21909. /*! export 5544 [provided] [no usage info] [missing usage info prevents renaming] */
  21910. /*! export 5545 [provided] [no usage info] [missing usage info prevents renaming] */
  21911. /*! export 5546 [provided] [no usage info] [missing usage info prevents renaming] */
  21912. /*! export 5547 [provided] [no usage info] [missing usage info prevents renaming] */
  21913. /*! export 5548 [provided] [no usage info] [missing usage info prevents renaming] */
  21914. /*! export 5549 [provided] [no usage info] [missing usage info prevents renaming] */
  21915. /*! export 555 [provided] [no usage info] [missing usage info prevents renaming] */
  21916. /*! export 5550 [provided] [no usage info] [missing usage info prevents renaming] */
  21917. /*! export 5551 [provided] [no usage info] [missing usage info prevents renaming] */
  21918. /*! export 5552 [provided] [no usage info] [missing usage info prevents renaming] */
  21919. /*! export 5553 [provided] [no usage info] [missing usage info prevents renaming] */
  21920. /*! export 5554 [provided] [no usage info] [missing usage info prevents renaming] */
  21921. /*! export 5555 [provided] [no usage info] [missing usage info prevents renaming] */
  21922. /*! export 5556 [provided] [no usage info] [missing usage info prevents renaming] */
  21923. /*! export 5557 [provided] [no usage info] [missing usage info prevents renaming] */
  21924. /*! export 5558 [provided] [no usage info] [missing usage info prevents renaming] */
  21925. /*! export 5559 [provided] [no usage info] [missing usage info prevents renaming] */
  21926. /*! export 556 [provided] [no usage info] [missing usage info prevents renaming] */
  21927. /*! export 5560 [provided] [no usage info] [missing usage info prevents renaming] */
  21928. /*! export 5561 [provided] [no usage info] [missing usage info prevents renaming] */
  21929. /*! export 5562 [provided] [no usage info] [missing usage info prevents renaming] */
  21930. /*! export 5563 [provided] [no usage info] [missing usage info prevents renaming] */
  21931. /*! export 5564 [provided] [no usage info] [missing usage info prevents renaming] */
  21932. /*! export 5565 [provided] [no usage info] [missing usage info prevents renaming] */
  21933. /*! export 5566 [provided] [no usage info] [missing usage info prevents renaming] */
  21934. /*! export 5567 [provided] [no usage info] [missing usage info prevents renaming] */
  21935. /*! export 5568 [provided] [no usage info] [missing usage info prevents renaming] */
  21936. /*! export 5569 [provided] [no usage info] [missing usage info prevents renaming] */
  21937. /*! export 557 [provided] [no usage info] [missing usage info prevents renaming] */
  21938. /*! export 5570 [provided] [no usage info] [missing usage info prevents renaming] */
  21939. /*! export 5571 [provided] [no usage info] [missing usage info prevents renaming] */
  21940. /*! export 5572 [provided] [no usage info] [missing usage info prevents renaming] */
  21941. /*! export 5573 [provided] [no usage info] [missing usage info prevents renaming] */
  21942. /*! export 5574 [provided] [no usage info] [missing usage info prevents renaming] */
  21943. /*! export 5575 [provided] [no usage info] [missing usage info prevents renaming] */
  21944. /*! export 5576 [provided] [no usage info] [missing usage info prevents renaming] */
  21945. /*! export 5577 [provided] [no usage info] [missing usage info prevents renaming] */
  21946. /*! export 5578 [provided] [no usage info] [missing usage info prevents renaming] */
  21947. /*! export 5579 [provided] [no usage info] [missing usage info prevents renaming] */
  21948. /*! export 558 [provided] [no usage info] [missing usage info prevents renaming] */
  21949. /*! export 5580 [provided] [no usage info] [missing usage info prevents renaming] */
  21950. /*! export 5581 [provided] [no usage info] [missing usage info prevents renaming] */
  21951. /*! export 5582 [provided] [no usage info] [missing usage info prevents renaming] */
  21952. /*! export 5583 [provided] [no usage info] [missing usage info prevents renaming] */
  21953. /*! export 5584 [provided] [no usage info] [missing usage info prevents renaming] */
  21954. /*! export 5585 [provided] [no usage info] [missing usage info prevents renaming] */
  21955. /*! export 5586 [provided] [no usage info] [missing usage info prevents renaming] */
  21956. /*! export 5587 [provided] [no usage info] [missing usage info prevents renaming] */
  21957. /*! export 5588 [provided] [no usage info] [missing usage info prevents renaming] */
  21958. /*! export 5589 [provided] [no usage info] [missing usage info prevents renaming] */
  21959. /*! export 559 [provided] [no usage info] [missing usage info prevents renaming] */
  21960. /*! export 5590 [provided] [no usage info] [missing usage info prevents renaming] */
  21961. /*! export 5591 [provided] [no usage info] [missing usage info prevents renaming] */
  21962. /*! export 5592 [provided] [no usage info] [missing usage info prevents renaming] */
  21963. /*! export 5593 [provided] [no usage info] [missing usage info prevents renaming] */
  21964. /*! export 5594 [provided] [no usage info] [missing usage info prevents renaming] */
  21965. /*! export 5595 [provided] [no usage info] [missing usage info prevents renaming] */
  21966. /*! export 5596 [provided] [no usage info] [missing usage info prevents renaming] */
  21967. /*! export 5597 [provided] [no usage info] [missing usage info prevents renaming] */
  21968. /*! export 5598 [provided] [no usage info] [missing usage info prevents renaming] */
  21969. /*! export 5599 [provided] [no usage info] [missing usage info prevents renaming] */
  21970. /*! export 56 [provided] [no usage info] [missing usage info prevents renaming] */
  21971. /*! export 560 [provided] [no usage info] [missing usage info prevents renaming] */
  21972. /*! export 5600 [provided] [no usage info] [missing usage info prevents renaming] */
  21973. /*! export 5601 [provided] [no usage info] [missing usage info prevents renaming] */
  21974. /*! export 5602 [provided] [no usage info] [missing usage info prevents renaming] */
  21975. /*! export 5603 [provided] [no usage info] [missing usage info prevents renaming] */
  21976. /*! export 5604 [provided] [no usage info] [missing usage info prevents renaming] */
  21977. /*! export 5605 [provided] [no usage info] [missing usage info prevents renaming] */
  21978. /*! export 5606 [provided] [no usage info] [missing usage info prevents renaming] */
  21979. /*! export 5607 [provided] [no usage info] [missing usage info prevents renaming] */
  21980. /*! export 5608 [provided] [no usage info] [missing usage info prevents renaming] */
  21981. /*! export 5609 [provided] [no usage info] [missing usage info prevents renaming] */
  21982. /*! export 561 [provided] [no usage info] [missing usage info prevents renaming] */
  21983. /*! export 5610 [provided] [no usage info] [missing usage info prevents renaming] */
  21984. /*! export 5611 [provided] [no usage info] [missing usage info prevents renaming] */
  21985. /*! export 5612 [provided] [no usage info] [missing usage info prevents renaming] */
  21986. /*! export 5613 [provided] [no usage info] [missing usage info prevents renaming] */
  21987. /*! export 5614 [provided] [no usage info] [missing usage info prevents renaming] */
  21988. /*! export 5615 [provided] [no usage info] [missing usage info prevents renaming] */
  21989. /*! export 5616 [provided] [no usage info] [missing usage info prevents renaming] */
  21990. /*! export 562 [provided] [no usage info] [missing usage info prevents renaming] */
  21991. /*! export 563 [provided] [no usage info] [missing usage info prevents renaming] */
  21992. /*! export 564 [provided] [no usage info] [missing usage info prevents renaming] */
  21993. /*! export 565 [provided] [no usage info] [missing usage info prevents renaming] */
  21994. /*! export 566 [provided] [no usage info] [missing usage info prevents renaming] */
  21995. /*! export 567 [provided] [no usage info] [missing usage info prevents renaming] */
  21996. /*! export 568 [provided] [no usage info] [missing usage info prevents renaming] */
  21997. /*! export 569 [provided] [no usage info] [missing usage info prevents renaming] */
  21998. /*! export 57 [provided] [no usage info] [missing usage info prevents renaming] */
  21999. /*! export 570 [provided] [no usage info] [missing usage info prevents renaming] */
  22000. /*! export 571 [provided] [no usage info] [missing usage info prevents renaming] */
  22001. /*! export 572 [provided] [no usage info] [missing usage info prevents renaming] */
  22002. /*! export 573 [provided] [no usage info] [missing usage info prevents renaming] */
  22003. /*! export 574 [provided] [no usage info] [missing usage info prevents renaming] */
  22004. /*! export 575 [provided] [no usage info] [missing usage info prevents renaming] */
  22005. /*! export 576 [provided] [no usage info] [missing usage info prevents renaming] */
  22006. /*! export 577 [provided] [no usage info] [missing usage info prevents renaming] */
  22007. /*! export 578 [provided] [no usage info] [missing usage info prevents renaming] */
  22008. /*! export 579 [provided] [no usage info] [missing usage info prevents renaming] */
  22009. /*! export 58 [provided] [no usage info] [missing usage info prevents renaming] */
  22010. /*! export 580 [provided] [no usage info] [missing usage info prevents renaming] */
  22011. /*! export 581 [provided] [no usage info] [missing usage info prevents renaming] */
  22012. /*! export 582 [provided] [no usage info] [missing usage info prevents renaming] */
  22013. /*! export 583 [provided] [no usage info] [missing usage info prevents renaming] */
  22014. /*! export 584 [provided] [no usage info] [missing usage info prevents renaming] */
  22015. /*! export 585 [provided] [no usage info] [missing usage info prevents renaming] */
  22016. /*! export 586 [provided] [no usage info] [missing usage info prevents renaming] */
  22017. /*! export 587 [provided] [no usage info] [missing usage info prevents renaming] */
  22018. /*! export 588 [provided] [no usage info] [missing usage info prevents renaming] */
  22019. /*! export 589 [provided] [no usage info] [missing usage info prevents renaming] */
  22020. /*! export 59 [provided] [no usage info] [missing usage info prevents renaming] */
  22021. /*! export 590 [provided] [no usage info] [missing usage info prevents renaming] */
  22022. /*! export 591 [provided] [no usage info] [missing usage info prevents renaming] */
  22023. /*! export 592 [provided] [no usage info] [missing usage info prevents renaming] */
  22024. /*! export 593 [provided] [no usage info] [missing usage info prevents renaming] */
  22025. /*! export 594 [provided] [no usage info] [missing usage info prevents renaming] */
  22026. /*! export 595 [provided] [no usage info] [missing usage info prevents renaming] */
  22027. /*! export 596 [provided] [no usage info] [missing usage info prevents renaming] */
  22028. /*! export 597 [provided] [no usage info] [missing usage info prevents renaming] */
  22029. /*! export 598 [provided] [no usage info] [missing usage info prevents renaming] */
  22030. /*! export 599 [provided] [no usage info] [missing usage info prevents renaming] */
  22031. /*! export 6 [provided] [no usage info] [missing usage info prevents renaming] */
  22032. /*! export 60 [provided] [no usage info] [missing usage info prevents renaming] */
  22033. /*! export 600 [provided] [no usage info] [missing usage info prevents renaming] */
  22034. /*! export 601 [provided] [no usage info] [missing usage info prevents renaming] */
  22035. /*! export 602 [provided] [no usage info] [missing usage info prevents renaming] */
  22036. /*! export 603 [provided] [no usage info] [missing usage info prevents renaming] */
  22037. /*! export 604 [provided] [no usage info] [missing usage info prevents renaming] */
  22038. /*! export 605 [provided] [no usage info] [missing usage info prevents renaming] */
  22039. /*! export 606 [provided] [no usage info] [missing usage info prevents renaming] */
  22040. /*! export 607 [provided] [no usage info] [missing usage info prevents renaming] */
  22041. /*! export 608 [provided] [no usage info] [missing usage info prevents renaming] */
  22042. /*! export 609 [provided] [no usage info] [missing usage info prevents renaming] */
  22043. /*! export 61 [provided] [no usage info] [missing usage info prevents renaming] */
  22044. /*! export 610 [provided] [no usage info] [missing usage info prevents renaming] */
  22045. /*! export 611 [provided] [no usage info] [missing usage info prevents renaming] */
  22046. /*! export 612 [provided] [no usage info] [missing usage info prevents renaming] */
  22047. /*! export 613 [provided] [no usage info] [missing usage info prevents renaming] */
  22048. /*! export 614 [provided] [no usage info] [missing usage info prevents renaming] */
  22049. /*! export 615 [provided] [no usage info] [missing usage info prevents renaming] */
  22050. /*! export 616 [provided] [no usage info] [missing usage info prevents renaming] */
  22051. /*! export 617 [provided] [no usage info] [missing usage info prevents renaming] */
  22052. /*! export 618 [provided] [no usage info] [missing usage info prevents renaming] */
  22053. /*! export 619 [provided] [no usage info] [missing usage info prevents renaming] */
  22054. /*! export 62 [provided] [no usage info] [missing usage info prevents renaming] */
  22055. /*! export 620 [provided] [no usage info] [missing usage info prevents renaming] */
  22056. /*! export 621 [provided] [no usage info] [missing usage info prevents renaming] */
  22057. /*! export 622 [provided] [no usage info] [missing usage info prevents renaming] */
  22058. /*! export 623 [provided] [no usage info] [missing usage info prevents renaming] */
  22059. /*! export 624 [provided] [no usage info] [missing usage info prevents renaming] */
  22060. /*! export 625 [provided] [no usage info] [missing usage info prevents renaming] */
  22061. /*! export 626 [provided] [no usage info] [missing usage info prevents renaming] */
  22062. /*! export 627 [provided] [no usage info] [missing usage info prevents renaming] */
  22063. /*! export 628 [provided] [no usage info] [missing usage info prevents renaming] */
  22064. /*! export 629 [provided] [no usage info] [missing usage info prevents renaming] */
  22065. /*! export 63 [provided] [no usage info] [missing usage info prevents renaming] */
  22066. /*! export 630 [provided] [no usage info] [missing usage info prevents renaming] */
  22067. /*! export 631 [provided] [no usage info] [missing usage info prevents renaming] */
  22068. /*! export 632 [provided] [no usage info] [missing usage info prevents renaming] */
  22069. /*! export 633 [provided] [no usage info] [missing usage info prevents renaming] */
  22070. /*! export 634 [provided] [no usage info] [missing usage info prevents renaming] */
  22071. /*! export 635 [provided] [no usage info] [missing usage info prevents renaming] */
  22072. /*! export 636 [provided] [no usage info] [missing usage info prevents renaming] */
  22073. /*! export 637 [provided] [no usage info] [missing usage info prevents renaming] */
  22074. /*! export 638 [provided] [no usage info] [missing usage info prevents renaming] */
  22075. /*! export 639 [provided] [no usage info] [missing usage info prevents renaming] */
  22076. /*! export 64 [provided] [no usage info] [missing usage info prevents renaming] */
  22077. /*! export 640 [provided] [no usage info] [missing usage info prevents renaming] */
  22078. /*! export 641 [provided] [no usage info] [missing usage info prevents renaming] */
  22079. /*! export 642 [provided] [no usage info] [missing usage info prevents renaming] */
  22080. /*! export 643 [provided] [no usage info] [missing usage info prevents renaming] */
  22081. /*! export 644 [provided] [no usage info] [missing usage info prevents renaming] */
  22082. /*! export 645 [provided] [no usage info] [missing usage info prevents renaming] */
  22083. /*! export 646 [provided] [no usage info] [missing usage info prevents renaming] */
  22084. /*! export 647 [provided] [no usage info] [missing usage info prevents renaming] */
  22085. /*! export 648 [provided] [no usage info] [missing usage info prevents renaming] */
  22086. /*! export 649 [provided] [no usage info] [missing usage info prevents renaming] */
  22087. /*! export 65 [provided] [no usage info] [missing usage info prevents renaming] */
  22088. /*! export 650 [provided] [no usage info] [missing usage info prevents renaming] */
  22089. /*! export 651 [provided] [no usage info] [missing usage info prevents renaming] */
  22090. /*! export 652 [provided] [no usage info] [missing usage info prevents renaming] */
  22091. /*! export 653 [provided] [no usage info] [missing usage info prevents renaming] */
  22092. /*! export 654 [provided] [no usage info] [missing usage info prevents renaming] */
  22093. /*! export 655 [provided] [no usage info] [missing usage info prevents renaming] */
  22094. /*! export 656 [provided] [no usage info] [missing usage info prevents renaming] */
  22095. /*! export 657 [provided] [no usage info] [missing usage info prevents renaming] */
  22096. /*! export 658 [provided] [no usage info] [missing usage info prevents renaming] */
  22097. /*! export 659 [provided] [no usage info] [missing usage info prevents renaming] */
  22098. /*! export 66 [provided] [no usage info] [missing usage info prevents renaming] */
  22099. /*! export 660 [provided] [no usage info] [missing usage info prevents renaming] */
  22100. /*! export 661 [provided] [no usage info] [missing usage info prevents renaming] */
  22101. /*! export 662 [provided] [no usage info] [missing usage info prevents renaming] */
  22102. /*! export 663 [provided] [no usage info] [missing usage info prevents renaming] */
  22103. /*! export 664 [provided] [no usage info] [missing usage info prevents renaming] */
  22104. /*! export 665 [provided] [no usage info] [missing usage info prevents renaming] */
  22105. /*! export 666 [provided] [no usage info] [missing usage info prevents renaming] */
  22106. /*! export 667 [provided] [no usage info] [missing usage info prevents renaming] */
  22107. /*! export 668 [provided] [no usage info] [missing usage info prevents renaming] */
  22108. /*! export 669 [provided] [no usage info] [missing usage info prevents renaming] */
  22109. /*! export 67 [provided] [no usage info] [missing usage info prevents renaming] */
  22110. /*! export 670 [provided] [no usage info] [missing usage info prevents renaming] */
  22111. /*! export 671 [provided] [no usage info] [missing usage info prevents renaming] */
  22112. /*! export 672 [provided] [no usage info] [missing usage info prevents renaming] */
  22113. /*! export 673 [provided] [no usage info] [missing usage info prevents renaming] */
  22114. /*! export 674 [provided] [no usage info] [missing usage info prevents renaming] */
  22115. /*! export 675 [provided] [no usage info] [missing usage info prevents renaming] */
  22116. /*! export 676 [provided] [no usage info] [missing usage info prevents renaming] */
  22117. /*! export 677 [provided] [no usage info] [missing usage info prevents renaming] */
  22118. /*! export 678 [provided] [no usage info] [missing usage info prevents renaming] */
  22119. /*! export 679 [provided] [no usage info] [missing usage info prevents renaming] */
  22120. /*! export 68 [provided] [no usage info] [missing usage info prevents renaming] */
  22121. /*! export 680 [provided] [no usage info] [missing usage info prevents renaming] */
  22122. /*! export 681 [provided] [no usage info] [missing usage info prevents renaming] */
  22123. /*! export 682 [provided] [no usage info] [missing usage info prevents renaming] */
  22124. /*! export 683 [provided] [no usage info] [missing usage info prevents renaming] */
  22125. /*! export 684 [provided] [no usage info] [missing usage info prevents renaming] */
  22126. /*! export 685 [provided] [no usage info] [missing usage info prevents renaming] */
  22127. /*! export 686 [provided] [no usage info] [missing usage info prevents renaming] */
  22128. /*! export 687 [provided] [no usage info] [missing usage info prevents renaming] */
  22129. /*! export 688 [provided] [no usage info] [missing usage info prevents renaming] */
  22130. /*! export 689 [provided] [no usage info] [missing usage info prevents renaming] */
  22131. /*! export 69 [provided] [no usage info] [missing usage info prevents renaming] */
  22132. /*! export 690 [provided] [no usage info] [missing usage info prevents renaming] */
  22133. /*! export 691 [provided] [no usage info] [missing usage info prevents renaming] */
  22134. /*! export 692 [provided] [no usage info] [missing usage info prevents renaming] */
  22135. /*! export 693 [provided] [no usage info] [missing usage info prevents renaming] */
  22136. /*! export 694 [provided] [no usage info] [missing usage info prevents renaming] */
  22137. /*! export 695 [provided] [no usage info] [missing usage info prevents renaming] */
  22138. /*! export 696 [provided] [no usage info] [missing usage info prevents renaming] */
  22139. /*! export 697 [provided] [no usage info] [missing usage info prevents renaming] */
  22140. /*! export 698 [provided] [no usage info] [missing usage info prevents renaming] */
  22141. /*! export 699 [provided] [no usage info] [missing usage info prevents renaming] */
  22142. /*! export 7 [provided] [no usage info] [missing usage info prevents renaming] */
  22143. /*! export 70 [provided] [no usage info] [missing usage info prevents renaming] */
  22144. /*! export 700 [provided] [no usage info] [missing usage info prevents renaming] */
  22145. /*! export 701 [provided] [no usage info] [missing usage info prevents renaming] */
  22146. /*! export 702 [provided] [no usage info] [missing usage info prevents renaming] */
  22147. /*! export 703 [provided] [no usage info] [missing usage info prevents renaming] */
  22148. /*! export 704 [provided] [no usage info] [missing usage info prevents renaming] */
  22149. /*! export 705 [provided] [no usage info] [missing usage info prevents renaming] */
  22150. /*! export 706 [provided] [no usage info] [missing usage info prevents renaming] */
  22151. /*! export 707 [provided] [no usage info] [missing usage info prevents renaming] */
  22152. /*! export 708 [provided] [no usage info] [missing usage info prevents renaming] */
  22153. /*! export 709 [provided] [no usage info] [missing usage info prevents renaming] */
  22154. /*! export 71 [provided] [no usage info] [missing usage info prevents renaming] */
  22155. /*! export 710 [provided] [no usage info] [missing usage info prevents renaming] */
  22156. /*! export 711 [provided] [no usage info] [missing usage info prevents renaming] */
  22157. /*! export 712 [provided] [no usage info] [missing usage info prevents renaming] */
  22158. /*! export 713 [provided] [no usage info] [missing usage info prevents renaming] */
  22159. /*! export 714 [provided] [no usage info] [missing usage info prevents renaming] */
  22160. /*! export 715 [provided] [no usage info] [missing usage info prevents renaming] */
  22161. /*! export 716 [provided] [no usage info] [missing usage info prevents renaming] */
  22162. /*! export 717 [provided] [no usage info] [missing usage info prevents renaming] */
  22163. /*! export 718 [provided] [no usage info] [missing usage info prevents renaming] */
  22164. /*! export 719 [provided] [no usage info] [missing usage info prevents renaming] */
  22165. /*! export 72 [provided] [no usage info] [missing usage info prevents renaming] */
  22166. /*! export 720 [provided] [no usage info] [missing usage info prevents renaming] */
  22167. /*! export 721 [provided] [no usage info] [missing usage info prevents renaming] */
  22168. /*! export 722 [provided] [no usage info] [missing usage info prevents renaming] */
  22169. /*! export 723 [provided] [no usage info] [missing usage info prevents renaming] */
  22170. /*! export 724 [provided] [no usage info] [missing usage info prevents renaming] */
  22171. /*! export 725 [provided] [no usage info] [missing usage info prevents renaming] */
  22172. /*! export 726 [provided] [no usage info] [missing usage info prevents renaming] */
  22173. /*! export 727 [provided] [no usage info] [missing usage info prevents renaming] */
  22174. /*! export 728 [provided] [no usage info] [missing usage info prevents renaming] */
  22175. /*! export 729 [provided] [no usage info] [missing usage info prevents renaming] */
  22176. /*! export 73 [provided] [no usage info] [missing usage info prevents renaming] */
  22177. /*! export 730 [provided] [no usage info] [missing usage info prevents renaming] */
  22178. /*! export 731 [provided] [no usage info] [missing usage info prevents renaming] */
  22179. /*! export 732 [provided] [no usage info] [missing usage info prevents renaming] */
  22180. /*! export 733 [provided] [no usage info] [missing usage info prevents renaming] */
  22181. /*! export 734 [provided] [no usage info] [missing usage info prevents renaming] */
  22182. /*! export 735 [provided] [no usage info] [missing usage info prevents renaming] */
  22183. /*! export 736 [provided] [no usage info] [missing usage info prevents renaming] */
  22184. /*! export 737 [provided] [no usage info] [missing usage info prevents renaming] */
  22185. /*! export 738 [provided] [no usage info] [missing usage info prevents renaming] */
  22186. /*! export 739 [provided] [no usage info] [missing usage info prevents renaming] */
  22187. /*! export 74 [provided] [no usage info] [missing usage info prevents renaming] */
  22188. /*! export 740 [provided] [no usage info] [missing usage info prevents renaming] */
  22189. /*! export 741 [provided] [no usage info] [missing usage info prevents renaming] */
  22190. /*! export 742 [provided] [no usage info] [missing usage info prevents renaming] */
  22191. /*! export 743 [provided] [no usage info] [missing usage info prevents renaming] */
  22192. /*! export 744 [provided] [no usage info] [missing usage info prevents renaming] */
  22193. /*! export 745 [provided] [no usage info] [missing usage info prevents renaming] */
  22194. /*! export 746 [provided] [no usage info] [missing usage info prevents renaming] */
  22195. /*! export 747 [provided] [no usage info] [missing usage info prevents renaming] */
  22196. /*! export 748 [provided] [no usage info] [missing usage info prevents renaming] */
  22197. /*! export 749 [provided] [no usage info] [missing usage info prevents renaming] */
  22198. /*! export 75 [provided] [no usage info] [missing usage info prevents renaming] */
  22199. /*! export 750 [provided] [no usage info] [missing usage info prevents renaming] */
  22200. /*! export 751 [provided] [no usage info] [missing usage info prevents renaming] */
  22201. /*! export 752 [provided] [no usage info] [missing usage info prevents renaming] */
  22202. /*! export 753 [provided] [no usage info] [missing usage info prevents renaming] */
  22203. /*! export 754 [provided] [no usage info] [missing usage info prevents renaming] */
  22204. /*! export 755 [provided] [no usage info] [missing usage info prevents renaming] */
  22205. /*! export 756 [provided] [no usage info] [missing usage info prevents renaming] */
  22206. /*! export 757 [provided] [no usage info] [missing usage info prevents renaming] */
  22207. /*! export 758 [provided] [no usage info] [missing usage info prevents renaming] */
  22208. /*! export 759 [provided] [no usage info] [missing usage info prevents renaming] */
  22209. /*! export 76 [provided] [no usage info] [missing usage info prevents renaming] */
  22210. /*! export 760 [provided] [no usage info] [missing usage info prevents renaming] */
  22211. /*! export 761 [provided] [no usage info] [missing usage info prevents renaming] */
  22212. /*! export 762 [provided] [no usage info] [missing usage info prevents renaming] */
  22213. /*! export 763 [provided] [no usage info] [missing usage info prevents renaming] */
  22214. /*! export 764 [provided] [no usage info] [missing usage info prevents renaming] */
  22215. /*! export 765 [provided] [no usage info] [missing usage info prevents renaming] */
  22216. /*! export 766 [provided] [no usage info] [missing usage info prevents renaming] */
  22217. /*! export 767 [provided] [no usage info] [missing usage info prevents renaming] */
  22218. /*! export 768 [provided] [no usage info] [missing usage info prevents renaming] */
  22219. /*! export 769 [provided] [no usage info] [missing usage info prevents renaming] */
  22220. /*! export 77 [provided] [no usage info] [missing usage info prevents renaming] */
  22221. /*! export 770 [provided] [no usage info] [missing usage info prevents renaming] */
  22222. /*! export 771 [provided] [no usage info] [missing usage info prevents renaming] */
  22223. /*! export 772 [provided] [no usage info] [missing usage info prevents renaming] */
  22224. /*! export 773 [provided] [no usage info] [missing usage info prevents renaming] */
  22225. /*! export 774 [provided] [no usage info] [missing usage info prevents renaming] */
  22226. /*! export 775 [provided] [no usage info] [missing usage info prevents renaming] */
  22227. /*! export 776 [provided] [no usage info] [missing usage info prevents renaming] */
  22228. /*! export 777 [provided] [no usage info] [missing usage info prevents renaming] */
  22229. /*! export 778 [provided] [no usage info] [missing usage info prevents renaming] */
  22230. /*! export 779 [provided] [no usage info] [missing usage info prevents renaming] */
  22231. /*! export 78 [provided] [no usage info] [missing usage info prevents renaming] */
  22232. /*! export 780 [provided] [no usage info] [missing usage info prevents renaming] */
  22233. /*! export 781 [provided] [no usage info] [missing usage info prevents renaming] */
  22234. /*! export 782 [provided] [no usage info] [missing usage info prevents renaming] */
  22235. /*! export 783 [provided] [no usage info] [missing usage info prevents renaming] */
  22236. /*! export 784 [provided] [no usage info] [missing usage info prevents renaming] */
  22237. /*! export 785 [provided] [no usage info] [missing usage info prevents renaming] */
  22238. /*! export 786 [provided] [no usage info] [missing usage info prevents renaming] */
  22239. /*! export 787 [provided] [no usage info] [missing usage info prevents renaming] */
  22240. /*! export 788 [provided] [no usage info] [missing usage info prevents renaming] */
  22241. /*! export 789 [provided] [no usage info] [missing usage info prevents renaming] */
  22242. /*! export 79 [provided] [no usage info] [missing usage info prevents renaming] */
  22243. /*! export 790 [provided] [no usage info] [missing usage info prevents renaming] */
  22244. /*! export 791 [provided] [no usage info] [missing usage info prevents renaming] */
  22245. /*! export 792 [provided] [no usage info] [missing usage info prevents renaming] */
  22246. /*! export 793 [provided] [no usage info] [missing usage info prevents renaming] */
  22247. /*! export 794 [provided] [no usage info] [missing usage info prevents renaming] */
  22248. /*! export 795 [provided] [no usage info] [missing usage info prevents renaming] */
  22249. /*! export 796 [provided] [no usage info] [missing usage info prevents renaming] */
  22250. /*! export 797 [provided] [no usage info] [missing usage info prevents renaming] */
  22251. /*! export 798 [provided] [no usage info] [missing usage info prevents renaming] */
  22252. /*! export 799 [provided] [no usage info] [missing usage info prevents renaming] */
  22253. /*! export 8 [provided] [no usage info] [missing usage info prevents renaming] */
  22254. /*! export 80 [provided] [no usage info] [missing usage info prevents renaming] */
  22255. /*! export 800 [provided] [no usage info] [missing usage info prevents renaming] */
  22256. /*! export 801 [provided] [no usage info] [missing usage info prevents renaming] */
  22257. /*! export 802 [provided] [no usage info] [missing usage info prevents renaming] */
  22258. /*! export 803 [provided] [no usage info] [missing usage info prevents renaming] */
  22259. /*! export 804 [provided] [no usage info] [missing usage info prevents renaming] */
  22260. /*! export 805 [provided] [no usage info] [missing usage info prevents renaming] */
  22261. /*! export 806 [provided] [no usage info] [missing usage info prevents renaming] */
  22262. /*! export 807 [provided] [no usage info] [missing usage info prevents renaming] */
  22263. /*! export 808 [provided] [no usage info] [missing usage info prevents renaming] */
  22264. /*! export 809 [provided] [no usage info] [missing usage info prevents renaming] */
  22265. /*! export 81 [provided] [no usage info] [missing usage info prevents renaming] */
  22266. /*! export 810 [provided] [no usage info] [missing usage info prevents renaming] */
  22267. /*! export 811 [provided] [no usage info] [missing usage info prevents renaming] */
  22268. /*! export 812 [provided] [no usage info] [missing usage info prevents renaming] */
  22269. /*! export 813 [provided] [no usage info] [missing usage info prevents renaming] */
  22270. /*! export 814 [provided] [no usage info] [missing usage info prevents renaming] */
  22271. /*! export 815 [provided] [no usage info] [missing usage info prevents renaming] */
  22272. /*! export 816 [provided] [no usage info] [missing usage info prevents renaming] */
  22273. /*! export 817 [provided] [no usage info] [missing usage info prevents renaming] */
  22274. /*! export 818 [provided] [no usage info] [missing usage info prevents renaming] */
  22275. /*! export 819 [provided] [no usage info] [missing usage info prevents renaming] */
  22276. /*! export 82 [provided] [no usage info] [missing usage info prevents renaming] */
  22277. /*! export 820 [provided] [no usage info] [missing usage info prevents renaming] */
  22278. /*! export 821 [provided] [no usage info] [missing usage info prevents renaming] */
  22279. /*! export 822 [provided] [no usage info] [missing usage info prevents renaming] */
  22280. /*! export 823 [provided] [no usage info] [missing usage info prevents renaming] */
  22281. /*! export 824 [provided] [no usage info] [missing usage info prevents renaming] */
  22282. /*! export 825 [provided] [no usage info] [missing usage info prevents renaming] */
  22283. /*! export 826 [provided] [no usage info] [missing usage info prevents renaming] */
  22284. /*! export 827 [provided] [no usage info] [missing usage info prevents renaming] */
  22285. /*! export 828 [provided] [no usage info] [missing usage info prevents renaming] */
  22286. /*! export 829 [provided] [no usage info] [missing usage info prevents renaming] */
  22287. /*! export 83 [provided] [no usage info] [missing usage info prevents renaming] */
  22288. /*! export 830 [provided] [no usage info] [missing usage info prevents renaming] */
  22289. /*! export 831 [provided] [no usage info] [missing usage info prevents renaming] */
  22290. /*! export 832 [provided] [no usage info] [missing usage info prevents renaming] */
  22291. /*! export 833 [provided] [no usage info] [missing usage info prevents renaming] */
  22292. /*! export 834 [provided] [no usage info] [missing usage info prevents renaming] */
  22293. /*! export 835 [provided] [no usage info] [missing usage info prevents renaming] */
  22294. /*! export 836 [provided] [no usage info] [missing usage info prevents renaming] */
  22295. /*! export 837 [provided] [no usage info] [missing usage info prevents renaming] */
  22296. /*! export 838 [provided] [no usage info] [missing usage info prevents renaming] */
  22297. /*! export 839 [provided] [no usage info] [missing usage info prevents renaming] */
  22298. /*! export 84 [provided] [no usage info] [missing usage info prevents renaming] */
  22299. /*! export 840 [provided] [no usage info] [missing usage info prevents renaming] */
  22300. /*! export 841 [provided] [no usage info] [missing usage info prevents renaming] */
  22301. /*! export 842 [provided] [no usage info] [missing usage info prevents renaming] */
  22302. /*! export 843 [provided] [no usage info] [missing usage info prevents renaming] */
  22303. /*! export 844 [provided] [no usage info] [missing usage info prevents renaming] */
  22304. /*! export 845 [provided] [no usage info] [missing usage info prevents renaming] */
  22305. /*! export 846 [provided] [no usage info] [missing usage info prevents renaming] */
  22306. /*! export 847 [provided] [no usage info] [missing usage info prevents renaming] */
  22307. /*! export 848 [provided] [no usage info] [missing usage info prevents renaming] */
  22308. /*! export 849 [provided] [no usage info] [missing usage info prevents renaming] */
  22309. /*! export 85 [provided] [no usage info] [missing usage info prevents renaming] */
  22310. /*! export 850 [provided] [no usage info] [missing usage info prevents renaming] */
  22311. /*! export 851 [provided] [no usage info] [missing usage info prevents renaming] */
  22312. /*! export 852 [provided] [no usage info] [missing usage info prevents renaming] */
  22313. /*! export 853 [provided] [no usage info] [missing usage info prevents renaming] */
  22314. /*! export 854 [provided] [no usage info] [missing usage info prevents renaming] */
  22315. /*! export 855 [provided] [no usage info] [missing usage info prevents renaming] */
  22316. /*! export 856 [provided] [no usage info] [missing usage info prevents renaming] */
  22317. /*! export 857 [provided] [no usage info] [missing usage info prevents renaming] */
  22318. /*! export 858 [provided] [no usage info] [missing usage info prevents renaming] */
  22319. /*! export 859 [provided] [no usage info] [missing usage info prevents renaming] */
  22320. /*! export 86 [provided] [no usage info] [missing usage info prevents renaming] */
  22321. /*! export 860 [provided] [no usage info] [missing usage info prevents renaming] */
  22322. /*! export 861 [provided] [no usage info] [missing usage info prevents renaming] */
  22323. /*! export 862 [provided] [no usage info] [missing usage info prevents renaming] */
  22324. /*! export 863 [provided] [no usage info] [missing usage info prevents renaming] */
  22325. /*! export 864 [provided] [no usage info] [missing usage info prevents renaming] */
  22326. /*! export 865 [provided] [no usage info] [missing usage info prevents renaming] */
  22327. /*! export 866 [provided] [no usage info] [missing usage info prevents renaming] */
  22328. /*! export 867 [provided] [no usage info] [missing usage info prevents renaming] */
  22329. /*! export 868 [provided] [no usage info] [missing usage info prevents renaming] */
  22330. /*! export 869 [provided] [no usage info] [missing usage info prevents renaming] */
  22331. /*! export 87 [provided] [no usage info] [missing usage info prevents renaming] */
  22332. /*! export 870 [provided] [no usage info] [missing usage info prevents renaming] */
  22333. /*! export 871 [provided] [no usage info] [missing usage info prevents renaming] */
  22334. /*! export 872 [provided] [no usage info] [missing usage info prevents renaming] */
  22335. /*! export 873 [provided] [no usage info] [missing usage info prevents renaming] */
  22336. /*! export 874 [provided] [no usage info] [missing usage info prevents renaming] */
  22337. /*! export 875 [provided] [no usage info] [missing usage info prevents renaming] */
  22338. /*! export 876 [provided] [no usage info] [missing usage info prevents renaming] */
  22339. /*! export 877 [provided] [no usage info] [missing usage info prevents renaming] */
  22340. /*! export 878 [provided] [no usage info] [missing usage info prevents renaming] */
  22341. /*! export 879 [provided] [no usage info] [missing usage info prevents renaming] */
  22342. /*! export 88 [provided] [no usage info] [missing usage info prevents renaming] */
  22343. /*! export 880 [provided] [no usage info] [missing usage info prevents renaming] */
  22344. /*! export 881 [provided] [no usage info] [missing usage info prevents renaming] */
  22345. /*! export 882 [provided] [no usage info] [missing usage info prevents renaming] */
  22346. /*! export 883 [provided] [no usage info] [missing usage info prevents renaming] */
  22347. /*! export 884 [provided] [no usage info] [missing usage info prevents renaming] */
  22348. /*! export 885 [provided] [no usage info] [missing usage info prevents renaming] */
  22349. /*! export 886 [provided] [no usage info] [missing usage info prevents renaming] */
  22350. /*! export 887 [provided] [no usage info] [missing usage info prevents renaming] */
  22351. /*! export 888 [provided] [no usage info] [missing usage info prevents renaming] */
  22352. /*! export 889 [provided] [no usage info] [missing usage info prevents renaming] */
  22353. /*! export 89 [provided] [no usage info] [missing usage info prevents renaming] */
  22354. /*! export 890 [provided] [no usage info] [missing usage info prevents renaming] */
  22355. /*! export 891 [provided] [no usage info] [missing usage info prevents renaming] */
  22356. /*! export 892 [provided] [no usage info] [missing usage info prevents renaming] */
  22357. /*! export 893 [provided] [no usage info] [missing usage info prevents renaming] */
  22358. /*! export 894 [provided] [no usage info] [missing usage info prevents renaming] */
  22359. /*! export 895 [provided] [no usage info] [missing usage info prevents renaming] */
  22360. /*! export 896 [provided] [no usage info] [missing usage info prevents renaming] */
  22361. /*! export 897 [provided] [no usage info] [missing usage info prevents renaming] */
  22362. /*! export 898 [provided] [no usage info] [missing usage info prevents renaming] */
  22363. /*! export 899 [provided] [no usage info] [missing usage info prevents renaming] */
  22364. /*! export 9 [provided] [no usage info] [missing usage info prevents renaming] */
  22365. /*! export 90 [provided] [no usage info] [missing usage info prevents renaming] */
  22366. /*! export 900 [provided] [no usage info] [missing usage info prevents renaming] */
  22367. /*! export 901 [provided] [no usage info] [missing usage info prevents renaming] */
  22368. /*! export 902 [provided] [no usage info] [missing usage info prevents renaming] */
  22369. /*! export 903 [provided] [no usage info] [missing usage info prevents renaming] */
  22370. /*! export 904 [provided] [no usage info] [missing usage info prevents renaming] */
  22371. /*! export 905 [provided] [no usage info] [missing usage info prevents renaming] */
  22372. /*! export 906 [provided] [no usage info] [missing usage info prevents renaming] */
  22373. /*! export 907 [provided] [no usage info] [missing usage info prevents renaming] */
  22374. /*! export 908 [provided] [no usage info] [missing usage info prevents renaming] */
  22375. /*! export 909 [provided] [no usage info] [missing usage info prevents renaming] */
  22376. /*! export 91 [provided] [no usage info] [missing usage info prevents renaming] */
  22377. /*! export 910 [provided] [no usage info] [missing usage info prevents renaming] */
  22378. /*! export 911 [provided] [no usage info] [missing usage info prevents renaming] */
  22379. /*! export 912 [provided] [no usage info] [missing usage info prevents renaming] */
  22380. /*! export 913 [provided] [no usage info] [missing usage info prevents renaming] */
  22381. /*! export 914 [provided] [no usage info] [missing usage info prevents renaming] */
  22382. /*! export 915 [provided] [no usage info] [missing usage info prevents renaming] */
  22383. /*! export 916 [provided] [no usage info] [missing usage info prevents renaming] */
  22384. /*! export 917 [provided] [no usage info] [missing usage info prevents renaming] */
  22385. /*! export 918 [provided] [no usage info] [missing usage info prevents renaming] */
  22386. /*! export 919 [provided] [no usage info] [missing usage info prevents renaming] */
  22387. /*! export 92 [provided] [no usage info] [missing usage info prevents renaming] */
  22388. /*! export 920 [provided] [no usage info] [missing usage info prevents renaming] */
  22389. /*! export 921 [provided] [no usage info] [missing usage info prevents renaming] */
  22390. /*! export 922 [provided] [no usage info] [missing usage info prevents renaming] */
  22391. /*! export 923 [provided] [no usage info] [missing usage info prevents renaming] */
  22392. /*! export 924 [provided] [no usage info] [missing usage info prevents renaming] */
  22393. /*! export 925 [provided] [no usage info] [missing usage info prevents renaming] */
  22394. /*! export 926 [provided] [no usage info] [missing usage info prevents renaming] */
  22395. /*! export 927 [provided] [no usage info] [missing usage info prevents renaming] */
  22396. /*! export 928 [provided] [no usage info] [missing usage info prevents renaming] */
  22397. /*! export 929 [provided] [no usage info] [missing usage info prevents renaming] */
  22398. /*! export 93 [provided] [no usage info] [missing usage info prevents renaming] */
  22399. /*! export 930 [provided] [no usage info] [missing usage info prevents renaming] */
  22400. /*! export 931 [provided] [no usage info] [missing usage info prevents renaming] */
  22401. /*! export 932 [provided] [no usage info] [missing usage info prevents renaming] */
  22402. /*! export 933 [provided] [no usage info] [missing usage info prevents renaming] */
  22403. /*! export 934 [provided] [no usage info] [missing usage info prevents renaming] */
  22404. /*! export 935 [provided] [no usage info] [missing usage info prevents renaming] */
  22405. /*! export 936 [provided] [no usage info] [missing usage info prevents renaming] */
  22406. /*! export 937 [provided] [no usage info] [missing usage info prevents renaming] */
  22407. /*! export 938 [provided] [no usage info] [missing usage info prevents renaming] */
  22408. /*! export 939 [provided] [no usage info] [missing usage info prevents renaming] */
  22409. /*! export 94 [provided] [no usage info] [missing usage info prevents renaming] */
  22410. /*! export 940 [provided] [no usage info] [missing usage info prevents renaming] */
  22411. /*! export 941 [provided] [no usage info] [missing usage info prevents renaming] */
  22412. /*! export 942 [provided] [no usage info] [missing usage info prevents renaming] */
  22413. /*! export 943 [provided] [no usage info] [missing usage info prevents renaming] */
  22414. /*! export 944 [provided] [no usage info] [missing usage info prevents renaming] */
  22415. /*! export 945 [provided] [no usage info] [missing usage info prevents renaming] */
  22416. /*! export 946 [provided] [no usage info] [missing usage info prevents renaming] */
  22417. /*! export 947 [provided] [no usage info] [missing usage info prevents renaming] */
  22418. /*! export 948 [provided] [no usage info] [missing usage info prevents renaming] */
  22419. /*! export 949 [provided] [no usage info] [missing usage info prevents renaming] */
  22420. /*! export 95 [provided] [no usage info] [missing usage info prevents renaming] */
  22421. /*! export 950 [provided] [no usage info] [missing usage info prevents renaming] */
  22422. /*! export 951 [provided] [no usage info] [missing usage info prevents renaming] */
  22423. /*! export 952 [provided] [no usage info] [missing usage info prevents renaming] */
  22424. /*! export 953 [provided] [no usage info] [missing usage info prevents renaming] */
  22425. /*! export 954 [provided] [no usage info] [missing usage info prevents renaming] */
  22426. /*! export 955 [provided] [no usage info] [missing usage info prevents renaming] */
  22427. /*! export 956 [provided] [no usage info] [missing usage info prevents renaming] */
  22428. /*! export 957 [provided] [no usage info] [missing usage info prevents renaming] */
  22429. /*! export 958 [provided] [no usage info] [missing usage info prevents renaming] */
  22430. /*! export 959 [provided] [no usage info] [missing usage info prevents renaming] */
  22431. /*! export 96 [provided] [no usage info] [missing usage info prevents renaming] */
  22432. /*! export 960 [provided] [no usage info] [missing usage info prevents renaming] */
  22433. /*! export 961 [provided] [no usage info] [missing usage info prevents renaming] */
  22434. /*! export 962 [provided] [no usage info] [missing usage info prevents renaming] */
  22435. /*! export 963 [provided] [no usage info] [missing usage info prevents renaming] */
  22436. /*! export 964 [provided] [no usage info] [missing usage info prevents renaming] */
  22437. /*! export 965 [provided] [no usage info] [missing usage info prevents renaming] */
  22438. /*! export 966 [provided] [no usage info] [missing usage info prevents renaming] */
  22439. /*! export 967 [provided] [no usage info] [missing usage info prevents renaming] */
  22440. /*! export 968 [provided] [no usage info] [missing usage info prevents renaming] */
  22441. /*! export 969 [provided] [no usage info] [missing usage info prevents renaming] */
  22442. /*! export 97 [provided] [no usage info] [missing usage info prevents renaming] */
  22443. /*! export 970 [provided] [no usage info] [missing usage info prevents renaming] */
  22444. /*! export 971 [provided] [no usage info] [missing usage info prevents renaming] */
  22445. /*! export 972 [provided] [no usage info] [missing usage info prevents renaming] */
  22446. /*! export 973 [provided] [no usage info] [missing usage info prevents renaming] */
  22447. /*! export 974 [provided] [no usage info] [missing usage info prevents renaming] */
  22448. /*! export 975 [provided] [no usage info] [missing usage info prevents renaming] */
  22449. /*! export 976 [provided] [no usage info] [missing usage info prevents renaming] */
  22450. /*! export 977 [provided] [no usage info] [missing usage info prevents renaming] */
  22451. /*! export 978 [provided] [no usage info] [missing usage info prevents renaming] */
  22452. /*! export 979 [provided] [no usage info] [missing usage info prevents renaming] */
  22453. /*! export 98 [provided] [no usage info] [missing usage info prevents renaming] */
  22454. /*! export 980 [provided] [no usage info] [missing usage info prevents renaming] */
  22455. /*! export 981 [provided] [no usage info] [missing usage info prevents renaming] */
  22456. /*! export 982 [provided] [no usage info] [missing usage info prevents renaming] */
  22457. /*! export 983 [provided] [no usage info] [missing usage info prevents renaming] */
  22458. /*! export 984 [provided] [no usage info] [missing usage info prevents renaming] */
  22459. /*! export 985 [provided] [no usage info] [missing usage info prevents renaming] */
  22460. /*! export 986 [provided] [no usage info] [missing usage info prevents renaming] */
  22461. /*! export 987 [provided] [no usage info] [missing usage info prevents renaming] */
  22462. /*! export 988 [provided] [no usage info] [missing usage info prevents renaming] */
  22463. /*! export 989 [provided] [no usage info] [missing usage info prevents renaming] */
  22464. /*! export 99 [provided] [no usage info] [missing usage info prevents renaming] */
  22465. /*! export 990 [provided] [no usage info] [missing usage info prevents renaming] */
  22466. /*! export 991 [provided] [no usage info] [missing usage info prevents renaming] */
  22467. /*! export 992 [provided] [no usage info] [missing usage info prevents renaming] */
  22468. /*! export 993 [provided] [no usage info] [missing usage info prevents renaming] */
  22469. /*! export 994 [provided] [no usage info] [missing usage info prevents renaming] */
  22470. /*! export 995 [provided] [no usage info] [missing usage info prevents renaming] */
  22471. /*! export 996 [provided] [no usage info] [missing usage info prevents renaming] */
  22472. /*! export 997 [provided] [no usage info] [missing usage info prevents renaming] */
  22473. /*! export 998 [provided] [no usage info] [missing usage info prevents renaming] */
  22474. /*! export 999 [provided] [no usage info] [missing usage info prevents renaming] */
  22475. /*! other exports [not provided] [no usage info] */
  22476. /*! runtime requirements: module */
  22477. /***/ ((module) => {
  22478. module.exports = JSON.parse("[\"$&\",\"$'\",\"$*\",\"$+\",\"$1\",\"$2\",\"$3\",\"$4\",\"$5\",\"$6\",\"$7\",\"$8\",\"$9\",\"$_\",\"$`\",\"$input\",\"@@iterator\",\"ABORT_ERR\",\"ACTIVE\",\"ACTIVE_ATTRIBUTES\",\"ACTIVE_TEXTURE\",\"ACTIVE_UNIFORMS\",\"ADDITION\",\"ALIASED_LINE_WIDTH_RANGE\",\"ALIASED_POINT_SIZE_RANGE\",\"ALLOW_KEYBOARD_INPUT\",\"ALLPASS\",\"ALPHA\",\"ALPHA_BITS\",\"ALT_MASK\",\"ALWAYS\",\"ANY_TYPE\",\"ANY_UNORDERED_NODE_TYPE\",\"ARRAY_BUFFER\",\"ARRAY_BUFFER_BINDING\",\"ATTACHED_SHADERS\",\"ATTRIBUTE_NODE\",\"AT_TARGET\",\"AddSearchProvider\",\"AnalyserNode\",\"AnimationEvent\",\"AnonXMLHttpRequest\",\"ApplicationCache\",\"ApplicationCacheErrorEvent\",\"Array\",\"ArrayBuffer\",\"Attr\",\"Audio\",\"AudioBuffer\",\"AudioBufferSourceNode\",\"AudioContext\",\"AudioDestinationNode\",\"AudioListener\",\"AudioNode\",\"AudioParam\",\"AudioProcessingEvent\",\"AudioStreamTrack\",\"AutocompleteErrorEvent\",\"BACK\",\"BAD_BOUNDARYPOINTS_ERR\",\"BANDPASS\",\"BLEND\",\"BLEND_COLOR\",\"BLEND_DST_ALPHA\",\"BLEND_DST_RGB\",\"BLEND_EQUATION\",\"BLEND_EQUATION_ALPHA\",\"BLEND_EQUATION_RGB\",\"BLEND_SRC_ALPHA\",\"BLEND_SRC_RGB\",\"BLUE_BITS\",\"BLUR\",\"BOOL\",\"BOOLEAN_TYPE\",\"BOOL_VEC2\",\"BOOL_VEC3\",\"BOOL_VEC4\",\"BOTH\",\"BROWSER_DEFAULT_WEBGL\",\"BUBBLING_PHASE\",\"BUFFER_SIZE\",\"BUFFER_USAGE\",\"BYTE\",\"BYTES_PER_ELEMENT\",\"BarProp\",\"BaseHref\",\"BatteryManager\",\"BeforeLoadEvent\",\"BeforeUnloadEvent\",\"BiquadFilterNode\",\"Blob\",\"BlobEvent\",\"Boolean\",\"CAPTURING_PHASE\",\"CCW\",\"CDATASection\",\"CDATA_SECTION_NODE\",\"CHANGE\",\"CHARSET_RULE\",\"CHECKING\",\"CLAMP_TO_EDGE\",\"CLICK\",\"CLOSED\",\"CLOSING\",\"COLOR_ATTACHMENT0\",\"COLOR_BUFFER_BIT\",\"COLOR_CLEAR_VALUE\",\"COLOR_WRITEMASK\",\"COMMENT_NODE\",\"COMPILE_STATUS\",\"COMPRESSED_RGBA_S3TC_DXT1_EXT\",\"COMPRESSED_RGBA_S3TC_DXT3_EXT\",\"COMPRESSED_RGBA_S3TC_DXT5_EXT\",\"COMPRESSED_RGB_S3TC_DXT1_EXT\",\"COMPRESSED_TEXTURE_FORMATS\",\"CONNECTING\",\"CONSTANT_ALPHA\",\"CONSTANT_COLOR\",\"CONSTRAINT_ERR\",\"CONTEXT_LOST_WEBGL\",\"CONTROL_MASK\",\"COUNTER_STYLE_RULE\",\"CSS\",\"CSS2Properties\",\"CSSCharsetRule\",\"CSSConditionRule\",\"CSSCounterStyleRule\",\"CSSFontFaceRule\",\"CSSFontFeatureValuesRule\",\"CSSGroupingRule\",\"CSSImportRule\",\"CSSKeyframeRule\",\"CSSKeyframesRule\",\"CSSMediaRule\",\"CSSMozDocumentRule\",\"CSSNameSpaceRule\",\"CSSPageRule\",\"CSSPrimitiveValue\",\"CSSRule\",\"CSSRuleList\",\"CSSStyleDeclaration\",\"CSSStyleRule\",\"CSSStyleSheet\",\"CSSSupportsRule\",\"CSSUnknownRule\",\"CSSValue\",\"CSSValueList\",\"CSSVariablesDeclaration\",\"CSSVariablesRule\",\"CSSViewportRule\",\"CSS_ATTR\",\"CSS_CM\",\"CSS_COUNTER\",\"CSS_CUSTOM\",\"CSS_DEG\",\"CSS_DIMENSION\",\"CSS_EMS\",\"CSS_EXS\",\"CSS_FILTER_BLUR\",\"CSS_FILTER_BRIGHTNESS\",\"CSS_FILTER_CONTRAST\",\"CSS_FILTER_CUSTOM\",\"CSS_FILTER_DROP_SHADOW\",\"CSS_FILTER_GRAYSCALE\",\"CSS_FILTER_HUE_ROTATE\",\"CSS_FILTER_INVERT\",\"CSS_FILTER_OPACITY\",\"CSS_FILTER_REFERENCE\",\"CSS_FILTER_SATURATE\",\"CSS_FILTER_SEPIA\",\"CSS_GRAD\",\"CSS_HZ\",\"CSS_IDENT\",\"CSS_IN\",\"CSS_INHERIT\",\"CSS_KHZ\",\"CSS_MATRIX\",\"CSS_MATRIX3D\",\"CSS_MM\",\"CSS_MS\",\"CSS_NUMBER\",\"CSS_PC\",\"CSS_PERCENTAGE\",\"CSS_PERSPECTIVE\",\"CSS_PRIMITIVE_VALUE\",\"CSS_PT\",\"CSS_PX\",\"CSS_RAD\",\"CSS_RECT\",\"CSS_RGBCOLOR\",\"CSS_ROTATE\",\"CSS_ROTATE3D\",\"CSS_ROTATEX\",\"CSS_ROTATEY\",\"CSS_ROTATEZ\",\"CSS_S\",\"CSS_SCALE\",\"CSS_SCALE3D\",\"CSS_SCALEX\",\"CSS_SCALEY\",\"CSS_SCALEZ\",\"CSS_SKEW\",\"CSS_SKEWX\",\"CSS_SKEWY\",\"CSS_STRING\",\"CSS_TRANSLATE\",\"CSS_TRANSLATE3D\",\"CSS_TRANSLATEX\",\"CSS_TRANSLATEY\",\"CSS_TRANSLATEZ\",\"CSS_UNKNOWN\",\"CSS_URI\",\"CSS_VALUE_LIST\",\"CSS_VH\",\"CSS_VMAX\",\"CSS_VMIN\",\"CSS_VW\",\"CULL_FACE\",\"CULL_FACE_MODE\",\"CURRENT_PROGRAM\",\"CURRENT_VERTEX_ATTRIB\",\"CUSTOM\",\"CW\",\"CanvasGradient\",\"CanvasPattern\",\"CanvasRenderingContext2D\",\"CaretPosition\",\"ChannelMergerNode\",\"ChannelSplitterNode\",\"CharacterData\",\"ClientRect\",\"ClientRectList\",\"Clipboard\",\"ClipboardEvent\",\"CloseEvent\",\"Collator\",\"CommandEvent\",\"Comment\",\"CompositionEvent\",\"Console\",\"Controllers\",\"ConvolverNode\",\"Counter\",\"Crypto\",\"CryptoKey\",\"CustomEvent\",\"DATABASE_ERR\",\"DATA_CLONE_ERR\",\"DATA_ERR\",\"DBLCLICK\",\"DECR\",\"DECR_WRAP\",\"DELETE_STATUS\",\"DEPTH_ATTACHMENT\",\"DEPTH_BITS\",\"DEPTH_BUFFER_BIT\",\"DEPTH_CLEAR_VALUE\",\"DEPTH_COMPONENT\",\"DEPTH_COMPONENT16\",\"DEPTH_FUNC\",\"DEPTH_RANGE\",\"DEPTH_STENCIL\",\"DEPTH_STENCIL_ATTACHMENT\",\"DEPTH_TEST\",\"DEPTH_WRITEMASK\",\"DIRECTION_DOWN\",\"DIRECTION_LEFT\",\"DIRECTION_RIGHT\",\"DIRECTION_UP\",\"DISABLED\",\"DISPATCH_REQUEST_ERR\",\"DITHER\",\"DOCUMENT_FRAGMENT_NODE\",\"DOCUMENT_NODE\",\"DOCUMENT_POSITION_CONTAINED_BY\",\"DOCUMENT_POSITION_CONTAINS\",\"DOCUMENT_POSITION_DISCONNECTED\",\"DOCUMENT_POSITION_FOLLOWING\",\"DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC\",\"DOCUMENT_POSITION_PRECEDING\",\"DOCUMENT_TYPE_NODE\",\"DOMCursor\",\"DOMError\",\"DOMException\",\"DOMImplementation\",\"DOMImplementationLS\",\"DOMMatrix\",\"DOMMatrixReadOnly\",\"DOMParser\",\"DOMPoint\",\"DOMPointReadOnly\",\"DOMQuad\",\"DOMRect\",\"DOMRectList\",\"DOMRectReadOnly\",\"DOMRequest\",\"DOMSTRING_SIZE_ERR\",\"DOMSettableTokenList\",\"DOMStringList\",\"DOMStringMap\",\"DOMTokenList\",\"DOMTransactionEvent\",\"DOM_DELTA_LINE\",\"DOM_DELTA_PAGE\",\"DOM_DELTA_PIXEL\",\"DOM_INPUT_METHOD_DROP\",\"DOM_INPUT_METHOD_HANDWRITING\",\"DOM_INPUT_METHOD_IME\",\"DOM_INPUT_METHOD_KEYBOARD\",\"DOM_INPUT_METHOD_MULTIMODAL\",\"DOM_INPUT_METHOD_OPTION\",\"DOM_INPUT_METHOD_PASTE\",\"DOM_INPUT_METHOD_SCRIPT\",\"DOM_INPUT_METHOD_UNKNOWN\",\"DOM_INPUT_METHOD_VOICE\",\"DOM_KEY_LOCATION_JOYSTICK\",\"DOM_KEY_LOCATION_LEFT\",\"DOM_KEY_LOCATION_MOBILE\",\"DOM_KEY_LOCATION_NUMPAD\",\"DOM_KEY_LOCATION_RIGHT\",\"DOM_KEY_LOCATION_STANDARD\",\"DOM_VK_0\",\"DOM_VK_1\",\"DOM_VK_2\",\"DOM_VK_3\",\"DOM_VK_4\",\"DOM_VK_5\",\"DOM_VK_6\",\"DOM_VK_7\",\"DOM_VK_8\",\"DOM_VK_9\",\"DOM_VK_A\",\"DOM_VK_ACCEPT\",\"DOM_VK_ADD\",\"DOM_VK_ALT\",\"DOM_VK_ALTGR\",\"DOM_VK_AMPERSAND\",\"DOM_VK_ASTERISK\",\"DOM_VK_AT\",\"DOM_VK_ATTN\",\"DOM_VK_B\",\"DOM_VK_BACKSPACE\",\"DOM_VK_BACK_QUOTE\",\"DOM_VK_BACK_SLASH\",\"DOM_VK_BACK_SPACE\",\"DOM_VK_C\",\"DOM_VK_CANCEL\",\"DOM_VK_CAPS_LOCK\",\"DOM_VK_CIRCUMFLEX\",\"DOM_VK_CLEAR\",\"DOM_VK_CLOSE_BRACKET\",\"DOM_VK_CLOSE_CURLY_BRACKET\",\"DOM_VK_CLOSE_PAREN\",\"DOM_VK_COLON\",\"DOM_VK_COMMA\",\"DOM_VK_CONTEXT_MENU\",\"DOM_VK_CONTROL\",\"DOM_VK_CONVERT\",\"DOM_VK_CRSEL\",\"DOM_VK_CTRL\",\"DOM_VK_D\",\"DOM_VK_DECIMAL\",\"DOM_VK_DELETE\",\"DOM_VK_DIVIDE\",\"DOM_VK_DOLLAR\",\"DOM_VK_DOUBLE_QUOTE\",\"DOM_VK_DOWN\",\"DOM_VK_E\",\"DOM_VK_EISU\",\"DOM_VK_END\",\"DOM_VK_ENTER\",\"DOM_VK_EQUALS\",\"DOM_VK_EREOF\",\"DOM_VK_ESCAPE\",\"DOM_VK_EXCLAMATION\",\"DOM_VK_EXECUTE\",\"DOM_VK_EXSEL\",\"DOM_VK_F\",\"DOM_VK_F1\",\"DOM_VK_F10\",\"DOM_VK_F11\",\"DOM_VK_F12\",\"DOM_VK_F13\",\"DOM_VK_F14\",\"DOM_VK_F15\",\"DOM_VK_F16\",\"DOM_VK_F17\",\"DOM_VK_F18\",\"DOM_VK_F19\",\"DOM_VK_F2\",\"DOM_VK_F20\",\"DOM_VK_F21\",\"DOM_VK_F22\",\"DOM_VK_F23\",\"DOM_VK_F24\",\"DOM_VK_F25\",\"DOM_VK_F26\",\"DOM_VK_F27\",\"DOM_VK_F28\",\"DOM_VK_F29\",\"DOM_VK_F3\",\"DOM_VK_F30\",\"DOM_VK_F31\",\"DOM_VK_F32\",\"DOM_VK_F33\",\"DOM_VK_F34\",\"DOM_VK_F35\",\"DOM_VK_F36\",\"DOM_VK_F4\",\"DOM_VK_F5\",\"DOM_VK_F6\",\"DOM_VK_F7\",\"DOM_VK_F8\",\"DOM_VK_F9\",\"DOM_VK_FINAL\",\"DOM_VK_FRONT\",\"DOM_VK_G\",\"DOM_VK_GREATER_THAN\",\"DOM_VK_H\",\"DOM_VK_HANGUL\",\"DOM_VK_HANJA\",\"DOM_VK_HASH\",\"DOM_VK_HELP\",\"DOM_VK_HK_TOGGLE\",\"DOM_VK_HOME\",\"DOM_VK_HYPHEN_MINUS\",\"DOM_VK_I\",\"DOM_VK_INSERT\",\"DOM_VK_J\",\"DOM_VK_JUNJA\",\"DOM_VK_K\",\"DOM_VK_KANA\",\"DOM_VK_KANJI\",\"DOM_VK_L\",\"DOM_VK_LEFT\",\"DOM_VK_LEFT_TAB\",\"DOM_VK_LESS_THAN\",\"DOM_VK_M\",\"DOM_VK_META\",\"DOM_VK_MODECHANGE\",\"DOM_VK_MULTIPLY\",\"DOM_VK_N\",\"DOM_VK_NONCONVERT\",\"DOM_VK_NUMPAD0\",\"DOM_VK_NUMPAD1\",\"DOM_VK_NUMPAD2\",\"DOM_VK_NUMPAD3\",\"DOM_VK_NUMPAD4\",\"DOM_VK_NUMPAD5\",\"DOM_VK_NUMPAD6\",\"DOM_VK_NUMPAD7\",\"DOM_VK_NUMPAD8\",\"DOM_VK_NUMPAD9\",\"DOM_VK_NUM_LOCK\",\"DOM_VK_O\",\"DOM_VK_OEM_1\",\"DOM_VK_OEM_102\",\"DOM_VK_OEM_2\",\"DOM_VK_OEM_3\",\"DOM_VK_OEM_4\",\"DOM_VK_OEM_5\",\"DOM_VK_OEM_6\",\"DOM_VK_OEM_7\",\"DOM_VK_OEM_8\",\"DOM_VK_OEM_COMMA\",\"DOM_VK_OEM_MINUS\",\"DOM_VK_OEM_PERIOD\",\"DOM_VK_OEM_PLUS\",\"DOM_VK_OPEN_BRACKET\",\"DOM_VK_OPEN_CURLY_BRACKET\",\"DOM_VK_OPEN_PAREN\",\"DOM_VK_P\",\"DOM_VK_PA1\",\"DOM_VK_PAGEDOWN\",\"DOM_VK_PAGEUP\",\"DOM_VK_PAGE_DOWN\",\"DOM_VK_PAGE_UP\",\"DOM_VK_PAUSE\",\"DOM_VK_PERCENT\",\"DOM_VK_PERIOD\",\"DOM_VK_PIPE\",\"DOM_VK_PLAY\",\"DOM_VK_PLUS\",\"DOM_VK_PRINT\",\"DOM_VK_PRINTSCREEN\",\"DOM_VK_PROCESSKEY\",\"DOM_VK_PROPERITES\",\"DOM_VK_Q\",\"DOM_VK_QUESTION_MARK\",\"DOM_VK_QUOTE\",\"DOM_VK_R\",\"DOM_VK_REDO\",\"DOM_VK_RETURN\",\"DOM_VK_RIGHT\",\"DOM_VK_S\",\"DOM_VK_SCROLL_LOCK\",\"DOM_VK_SELECT\",\"DOM_VK_SEMICOLON\",\"DOM_VK_SEPARATOR\",\"DOM_VK_SHIFT\",\"DOM_VK_SLASH\",\"DOM_VK_SLEEP\",\"DOM_VK_SPACE\",\"DOM_VK_SUBTRACT\",\"DOM_VK_T\",\"DOM_VK_TAB\",\"DOM_VK_TILDE\",\"DOM_VK_U\",\"DOM_VK_UNDERSCORE\",\"DOM_VK_UNDO\",\"DOM_VK_UNICODE\",\"DOM_VK_UP\",\"DOM_VK_V\",\"DOM_VK_VOLUME_DOWN\",\"DOM_VK_VOLUME_MUTE\",\"DOM_VK_VOLUME_UP\",\"DOM_VK_W\",\"DOM_VK_WIN\",\"DOM_VK_WINDOW\",\"DOM_VK_WIN_ICO_00\",\"DOM_VK_WIN_ICO_CLEAR\",\"DOM_VK_WIN_ICO_HELP\",\"DOM_VK_WIN_OEM_ATTN\",\"DOM_VK_WIN_OEM_AUTO\",\"DOM_VK_WIN_OEM_BACKTAB\",\"DOM_VK_WIN_OEM_CLEAR\",\"DOM_VK_WIN_OEM_COPY\",\"DOM_VK_WIN_OEM_CUSEL\",\"DOM_VK_WIN_OEM_ENLW\",\"DOM_VK_WIN_OEM_FINISH\",\"DOM_VK_WIN_OEM_FJ_JISHO\",\"DOM_VK_WIN_OEM_FJ_LOYA\",\"DOM_VK_WIN_OEM_FJ_MASSHOU\",\"DOM_VK_WIN_OEM_FJ_ROYA\",\"DOM_VK_WIN_OEM_FJ_TOUROKU\",\"DOM_VK_WIN_OEM_JUMP\",\"DOM_VK_WIN_OEM_PA1\",\"DOM_VK_WIN_OEM_PA2\",\"DOM_VK_WIN_OEM_PA3\",\"DOM_VK_WIN_OEM_RESET\",\"DOM_VK_WIN_OEM_WSCTRL\",\"DOM_VK_X\",\"DOM_VK_XF86XK_ADD_FAVORITE\",\"DOM_VK_XF86XK_APPLICATION_LEFT\",\"DOM_VK_XF86XK_APPLICATION_RIGHT\",\"DOM_VK_XF86XK_AUDIO_CYCLE_TRACK\",\"DOM_VK_XF86XK_AUDIO_FORWARD\",\"DOM_VK_XF86XK_AUDIO_LOWER_VOLUME\",\"DOM_VK_XF86XK_AUDIO_MEDIA\",\"DOM_VK_XF86XK_AUDIO_MUTE\",\"DOM_VK_XF86XK_AUDIO_NEXT\",\"DOM_VK_XF86XK_AUDIO_PAUSE\",\"DOM_VK_XF86XK_AUDIO_PLAY\",\"DOM_VK_XF86XK_AUDIO_PREV\",\"DOM_VK_XF86XK_AUDIO_RAISE_VOLUME\",\"DOM_VK_XF86XK_AUDIO_RANDOM_PLAY\",\"DOM_VK_XF86XK_AUDIO_RECORD\",\"DOM_VK_XF86XK_AUDIO_REPEAT\",\"DOM_VK_XF86XK_AUDIO_REWIND\",\"DOM_VK_XF86XK_AUDIO_STOP\",\"DOM_VK_XF86XK_AWAY\",\"DOM_VK_XF86XK_BACK\",\"DOM_VK_XF86XK_BACK_FORWARD\",\"DOM_VK_XF86XK_BATTERY\",\"DOM_VK_XF86XK_BLUE\",\"DOM_VK_XF86XK_BLUETOOTH\",\"DOM_VK_XF86XK_BOOK\",\"DOM_VK_XF86XK_BRIGHTNESS_ADJUST\",\"DOM_VK_XF86XK_CALCULATOR\",\"DOM_VK_XF86XK_CALENDAR\",\"DOM_VK_XF86XK_CD\",\"DOM_VK_XF86XK_CLOSE\",\"DOM_VK_XF86XK_COMMUNITY\",\"DOM_VK_XF86XK_CONTRAST_ADJUST\",\"DOM_VK_XF86XK_COPY\",\"DOM_VK_XF86XK_CUT\",\"DOM_VK_XF86XK_CYCLE_ANGLE\",\"DOM_VK_XF86XK_DISPLAY\",\"DOM_VK_XF86XK_DOCUMENTS\",\"DOM_VK_XF86XK_DOS\",\"DOM_VK_XF86XK_EJECT\",\"DOM_VK_XF86XK_EXCEL\",\"DOM_VK_XF86XK_EXPLORER\",\"DOM_VK_XF86XK_FAVORITES\",\"DOM_VK_XF86XK_FINANCE\",\"DOM_VK_XF86XK_FORWARD\",\"DOM_VK_XF86XK_FRAME_BACK\",\"DOM_VK_XF86XK_FRAME_FORWARD\",\"DOM_VK_XF86XK_GAME\",\"DOM_VK_XF86XK_GO\",\"DOM_VK_XF86XK_GREEN\",\"DOM_VK_XF86XK_HIBERNATE\",\"DOM_VK_XF86XK_HISTORY\",\"DOM_VK_XF86XK_HOME_PAGE\",\"DOM_VK_XF86XK_HOT_LINKS\",\"DOM_VK_XF86XK_I_TOUCH\",\"DOM_VK_XF86XK_KBD_BRIGHTNESS_DOWN\",\"DOM_VK_XF86XK_KBD_BRIGHTNESS_UP\",\"DOM_VK_XF86XK_KBD_LIGHT_ON_OFF\",\"DOM_VK_XF86XK_LAUNCH0\",\"DOM_VK_XF86XK_LAUNCH1\",\"DOM_VK_XF86XK_LAUNCH2\",\"DOM_VK_XF86XK_LAUNCH3\",\"DOM_VK_XF86XK_LAUNCH4\",\"DOM_VK_XF86XK_LAUNCH5\",\"DOM_VK_XF86XK_LAUNCH6\",\"DOM_VK_XF86XK_LAUNCH7\",\"DOM_VK_XF86XK_LAUNCH8\",\"DOM_VK_XF86XK_LAUNCH9\",\"DOM_VK_XF86XK_LAUNCH_A\",\"DOM_VK_XF86XK_LAUNCH_B\",\"DOM_VK_XF86XK_LAUNCH_C\",\"DOM_VK_XF86XK_LAUNCH_D\",\"DOM_VK_XF86XK_LAUNCH_E\",\"DOM_VK_XF86XK_LAUNCH_F\",\"DOM_VK_XF86XK_LIGHT_BULB\",\"DOM_VK_XF86XK_LOG_OFF\",\"DOM_VK_XF86XK_MAIL\",\"DOM_VK_XF86XK_MAIL_FORWARD\",\"DOM_VK_XF86XK_MARKET\",\"DOM_VK_XF86XK_MEETING\",\"DOM_VK_XF86XK_MEMO\",\"DOM_VK_XF86XK_MENU_KB\",\"DOM_VK_XF86XK_MENU_PB\",\"DOM_VK_XF86XK_MESSENGER\",\"DOM_VK_XF86XK_MON_BRIGHTNESS_DOWN\",\"DOM_VK_XF86XK_MON_BRIGHTNESS_UP\",\"DOM_VK_XF86XK_MUSIC\",\"DOM_VK_XF86XK_MY_COMPUTER\",\"DOM_VK_XF86XK_MY_SITES\",\"DOM_VK_XF86XK_NEW\",\"DOM_VK_XF86XK_NEWS\",\"DOM_VK_XF86XK_OFFICE_HOME\",\"DOM_VK_XF86XK_OPEN\",\"DOM_VK_XF86XK_OPEN_URL\",\"DOM_VK_XF86XK_OPTION\",\"DOM_VK_XF86XK_PASTE\",\"DOM_VK_XF86XK_PHONE\",\"DOM_VK_XF86XK_PICTURES\",\"DOM_VK_XF86XK_POWER_DOWN\",\"DOM_VK_XF86XK_POWER_OFF\",\"DOM_VK_XF86XK_RED\",\"DOM_VK_XF86XK_REFRESH\",\"DOM_VK_XF86XK_RELOAD\",\"DOM_VK_XF86XK_REPLY\",\"DOM_VK_XF86XK_ROCKER_DOWN\",\"DOM_VK_XF86XK_ROCKER_ENTER\",\"DOM_VK_XF86XK_ROCKER_UP\",\"DOM_VK_XF86XK_ROTATE_WINDOWS\",\"DOM_VK_XF86XK_ROTATION_KB\",\"DOM_VK_XF86XK_ROTATION_PB\",\"DOM_VK_XF86XK_SAVE\",\"DOM_VK_XF86XK_SCREEN_SAVER\",\"DOM_VK_XF86XK_SCROLL_CLICK\",\"DOM_VK_XF86XK_SCROLL_DOWN\",\"DOM_VK_XF86XK_SCROLL_UP\",\"DOM_VK_XF86XK_SEARCH\",\"DOM_VK_XF86XK_SEND\",\"DOM_VK_XF86XK_SHOP\",\"DOM_VK_XF86XK_SPELL\",\"DOM_VK_XF86XK_SPLIT_SCREEN\",\"DOM_VK_XF86XK_STANDBY\",\"DOM_VK_XF86XK_START\",\"DOM_VK_XF86XK_STOP\",\"DOM_VK_XF86XK_SUBTITLE\",\"DOM_VK_XF86XK_SUPPORT\",\"DOM_VK_XF86XK_SUSPEND\",\"DOM_VK_XF86XK_TASK_PANE\",\"DOM_VK_XF86XK_TERMINAL\",\"DOM_VK_XF86XK_TIME\",\"DOM_VK_XF86XK_TOOLS\",\"DOM_VK_XF86XK_TOP_MENU\",\"DOM_VK_XF86XK_TO_DO_LIST\",\"DOM_VK_XF86XK_TRAVEL\",\"DOM_VK_XF86XK_USER1KB\",\"DOM_VK_XF86XK_USER2KB\",\"DOM_VK_XF86XK_USER_PB\",\"DOM_VK_XF86XK_UWB\",\"DOM_VK_XF86XK_VENDOR_HOME\",\"DOM_VK_XF86XK_VIDEO\",\"DOM_VK_XF86XK_VIEW\",\"DOM_VK_XF86XK_WAKE_UP\",\"DOM_VK_XF86XK_WEB_CAM\",\"DOM_VK_XF86XK_WHEEL_BUTTON\",\"DOM_VK_XF86XK_WLAN\",\"DOM_VK_XF86XK_WORD\",\"DOM_VK_XF86XK_WWW\",\"DOM_VK_XF86XK_XFER\",\"DOM_VK_XF86XK_YELLOW\",\"DOM_VK_XF86XK_ZOOM_IN\",\"DOM_VK_XF86XK_ZOOM_OUT\",\"DOM_VK_Y\",\"DOM_VK_Z\",\"DOM_VK_ZOOM\",\"DONE\",\"DONT_CARE\",\"DOWNLOADING\",\"DRAGDROP\",\"DST_ALPHA\",\"DST_COLOR\",\"DYNAMIC_DRAW\",\"DataChannel\",\"DataTransfer\",\"DataTransferItem\",\"DataTransferItemList\",\"DataView\",\"Date\",\"DateTimeFormat\",\"DelayNode\",\"DesktopNotification\",\"DesktopNotificationCenter\",\"DeviceLightEvent\",\"DeviceMotionEvent\",\"DeviceOrientationEvent\",\"DeviceProximityEvent\",\"DeviceStorage\",\"DeviceStorageChangeEvent\",\"Document\",\"DocumentFragment\",\"DocumentType\",\"DragEvent\",\"DynamicsCompressorNode\",\"E\",\"ELEMENT_ARRAY_BUFFER\",\"ELEMENT_ARRAY_BUFFER_BINDING\",\"ELEMENT_NODE\",\"EMPTY\",\"ENCODING_ERR\",\"ENDED\",\"END_TO_END\",\"END_TO_START\",\"ENTITY_NODE\",\"ENTITY_REFERENCE_NODE\",\"EPSILON\",\"EQUAL\",\"EQUALPOWER\",\"ERROR\",\"EXPONENTIAL_DISTANCE\",\"Element\",\"ElementQuery\",\"Entity\",\"EntityReference\",\"Error\",\"ErrorEvent\",\"EvalError\",\"Event\",\"EventException\",\"EventSource\",\"EventTarget\",\"External\",\"FASTEST\",\"FIDOSDK\",\"FILTER_ACCEPT\",\"FILTER_INTERRUPT\",\"FILTER_REJECT\",\"FILTER_SKIP\",\"FINISHED_STATE\",\"FIRST_ORDERED_NODE_TYPE\",\"FLOAT\",\"FLOAT_MAT2\",\"FLOAT_MAT3\",\"FLOAT_MAT4\",\"FLOAT_VEC2\",\"FLOAT_VEC3\",\"FLOAT_VEC4\",\"FOCUS\",\"FONT_FACE_RULE\",\"FONT_FEATURE_VALUES_RULE\",\"FRAGMENT_SHADER\",\"FRAGMENT_SHADER_DERIVATIVE_HINT_OES\",\"FRAMEBUFFER\",\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\",\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\",\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\",\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\",\"FRAMEBUFFER_BINDING\",\"FRAMEBUFFER_COMPLETE\",\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\",\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\",\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\",\"FRAMEBUFFER_UNSUPPORTED\",\"FRONT\",\"FRONT_AND_BACK\",\"FRONT_FACE\",\"FUNC_ADD\",\"FUNC_REVERSE_SUBTRACT\",\"FUNC_SUBTRACT\",\"Feed\",\"FeedEntry\",\"File\",\"FileError\",\"FileList\",\"FileReader\",\"FindInPage\",\"Float32Array\",\"Float64Array\",\"FocusEvent\",\"FontFace\",\"FormData\",\"Function\",\"GENERATE_MIPMAP_HINT\",\"GEQUAL\",\"GREATER\",\"GREEN_BITS\",\"GainNode\",\"Gamepad\",\"GamepadButton\",\"GamepadEvent\",\"GestureEvent\",\"HAVE_CURRENT_DATA\",\"HAVE_ENOUGH_DATA\",\"HAVE_FUTURE_DATA\",\"HAVE_METADATA\",\"HAVE_NOTHING\",\"HEADERS_RECEIVED\",\"HIDDEN\",\"HIERARCHY_REQUEST_ERR\",\"HIGHPASS\",\"HIGHSHELF\",\"HIGH_FLOAT\",\"HIGH_INT\",\"HORIZONTAL\",\"HORIZONTAL_AXIS\",\"HRTF\",\"HTMLAllCollection\",\"HTMLAnchorElement\",\"HTMLAppletElement\",\"HTMLAreaElement\",\"HTMLAudioElement\",\"HTMLBRElement\",\"HTMLBaseElement\",\"HTMLBaseFontElement\",\"HTMLBlockquoteElement\",\"HTMLBodyElement\",\"HTMLButtonElement\",\"HTMLCanvasElement\",\"HTMLCollection\",\"HTMLCommandElement\",\"HTMLContentElement\",\"HTMLDListElement\",\"HTMLDataElement\",\"HTMLDataListElement\",\"HTMLDetailsElement\",\"HTMLDialogElement\",\"HTMLDirectoryElement\",\"HTMLDivElement\",\"HTMLDocument\",\"HTMLElement\",\"HTMLEmbedElement\",\"HTMLFieldSetElement\",\"HTMLFontElement\",\"HTMLFormControlsCollection\",\"HTMLFormElement\",\"HTMLFrameElement\",\"HTMLFrameSetElement\",\"HTMLHRElement\",\"HTMLHeadElement\",\"HTMLHeadingElement\",\"HTMLHtmlElement\",\"HTMLIFrameElement\",\"HTMLImageElement\",\"HTMLInputElement\",\"HTMLIsIndexElement\",\"HTMLKeygenElement\",\"HTMLLIElement\",\"HTMLLabelElement\",\"HTMLLegendElement\",\"HTMLLinkElement\",\"HTMLMapElement\",\"HTMLMarqueeElement\",\"HTMLMediaElement\",\"HTMLMenuElement\",\"HTMLMenuItemElement\",\"HTMLMetaElement\",\"HTMLMeterElement\",\"HTMLModElement\",\"HTMLOListElement\",\"HTMLObjectElement\",\"HTMLOptGroupElement\",\"HTMLOptionElement\",\"HTMLOptionsCollection\",\"HTMLOutputElement\",\"HTMLParagraphElement\",\"HTMLParamElement\",\"HTMLPictureElement\",\"HTMLPreElement\",\"HTMLProgressElement\",\"HTMLPropertiesCollection\",\"HTMLQuoteElement\",\"HTMLScriptElement\",\"HTMLSelectElement\",\"HTMLShadowElement\",\"HTMLSourceElement\",\"HTMLSpanElement\",\"HTMLStyleElement\",\"HTMLTableCaptionElement\",\"HTMLTableCellElement\",\"HTMLTableColElement\",\"HTMLTableElement\",\"HTMLTableRowElement\",\"HTMLTableSectionElement\",\"HTMLTemplateElement\",\"HTMLTextAreaElement\",\"HTMLTimeElement\",\"HTMLTitleElement\",\"HTMLTrackElement\",\"HTMLUListElement\",\"HTMLUnknownElement\",\"HTMLVideoElement\",\"HashChangeEvent\",\"Headers\",\"History\",\"ICE_CHECKING\",\"ICE_CLOSED\",\"ICE_COMPLETED\",\"ICE_CONNECTED\",\"ICE_FAILED\",\"ICE_GATHERING\",\"ICE_WAITING\",\"IDBCursor\",\"IDBCursorWithValue\",\"IDBDatabase\",\"IDBDatabaseException\",\"IDBFactory\",\"IDBFileHandle\",\"IDBFileRequest\",\"IDBIndex\",\"IDBKeyRange\",\"IDBMutableFile\",\"IDBObjectStore\",\"IDBOpenDBRequest\",\"IDBRequest\",\"IDBTransaction\",\"IDBVersionChangeEvent\",\"IDLE\",\"IMPLEMENTATION_COLOR_READ_FORMAT\",\"IMPLEMENTATION_COLOR_READ_TYPE\",\"IMPORT_RULE\",\"INCR\",\"INCR_WRAP\",\"INDEX_SIZE_ERR\",\"INT\",\"INT_VEC2\",\"INT_VEC3\",\"INT_VEC4\",\"INUSE_ATTRIBUTE_ERR\",\"INVALID_ACCESS_ERR\",\"INVALID_CHARACTER_ERR\",\"INVALID_ENUM\",\"INVALID_EXPRESSION_ERR\",\"INVALID_FRAMEBUFFER_OPERATION\",\"INVALID_MODIFICATION_ERR\",\"INVALID_NODE_TYPE_ERR\",\"INVALID_OPERATION\",\"INVALID_STATE_ERR\",\"INVALID_VALUE\",\"INVERSE_DISTANCE\",\"INVERT\",\"IceCandidate\",\"Image\",\"ImageBitmap\",\"ImageData\",\"Infinity\",\"InputEvent\",\"InputMethodContext\",\"InstallTrigger\",\"Int16Array\",\"Int32Array\",\"Int8Array\",\"Intent\",\"InternalError\",\"Intl\",\"IsSearchProviderInstalled\",\"Iterator\",\"JSON\",\"KEEP\",\"KEYDOWN\",\"KEYFRAMES_RULE\",\"KEYFRAME_RULE\",\"KEYPRESS\",\"KEYUP\",\"KeyEvent\",\"KeyboardEvent\",\"LENGTHADJUST_SPACING\",\"LENGTHADJUST_SPACINGANDGLYPHS\",\"LENGTHADJUST_UNKNOWN\",\"LEQUAL\",\"LESS\",\"LINEAR\",\"LINEAR_DISTANCE\",\"LINEAR_MIPMAP_LINEAR\",\"LINEAR_MIPMAP_NEAREST\",\"LINES\",\"LINE_LOOP\",\"LINE_STRIP\",\"LINE_WIDTH\",\"LINK_STATUS\",\"LIVE\",\"LN10\",\"LN2\",\"LOADED\",\"LOADING\",\"LOG10E\",\"LOG2E\",\"LOWPASS\",\"LOWSHELF\",\"LOW_FLOAT\",\"LOW_INT\",\"LSException\",\"LSParserFilter\",\"LUMINANCE\",\"LUMINANCE_ALPHA\",\"LocalMediaStream\",\"Location\",\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\",\"MAX_CUBE_MAP_TEXTURE_SIZE\",\"MAX_FRAGMENT_UNIFORM_VECTORS\",\"MAX_RENDERBUFFER_SIZE\",\"MAX_SAFE_INTEGER\",\"MAX_TEXTURE_IMAGE_UNITS\",\"MAX_TEXTURE_MAX_ANISOTROPY_EXT\",\"MAX_TEXTURE_SIZE\",\"MAX_VALUE\",\"MAX_VARYING_VECTORS\",\"MAX_VERTEX_ATTRIBS\",\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\",\"MAX_VERTEX_UNIFORM_VECTORS\",\"MAX_VIEWPORT_DIMS\",\"MEDIA_ERR_ABORTED\",\"MEDIA_ERR_DECODE\",\"MEDIA_ERR_ENCRYPTED\",\"MEDIA_ERR_NETWORK\",\"MEDIA_ERR_SRC_NOT_SUPPORTED\",\"MEDIA_KEYERR_CLIENT\",\"MEDIA_KEYERR_DOMAIN\",\"MEDIA_KEYERR_HARDWARECHANGE\",\"MEDIA_KEYERR_OUTPUT\",\"MEDIA_KEYERR_SERVICE\",\"MEDIA_KEYERR_UNKNOWN\",\"MEDIA_RULE\",\"MEDIUM_FLOAT\",\"MEDIUM_INT\",\"META_MASK\",\"MIN_SAFE_INTEGER\",\"MIN_VALUE\",\"MIRRORED_REPEAT\",\"MODE_ASYNCHRONOUS\",\"MODE_SYNCHRONOUS\",\"MODIFICATION\",\"MOUSEDOWN\",\"MOUSEDRAG\",\"MOUSEMOVE\",\"MOUSEOUT\",\"MOUSEOVER\",\"MOUSEUP\",\"MOZ_KEYFRAMES_RULE\",\"MOZ_KEYFRAME_RULE\",\"MOZ_SOURCE_CURSOR\",\"MOZ_SOURCE_ERASER\",\"MOZ_SOURCE_KEYBOARD\",\"MOZ_SOURCE_MOUSE\",\"MOZ_SOURCE_PEN\",\"MOZ_SOURCE_TOUCH\",\"MOZ_SOURCE_UNKNOWN\",\"MSGESTURE_FLAG_BEGIN\",\"MSGESTURE_FLAG_CANCEL\",\"MSGESTURE_FLAG_END\",\"MSGESTURE_FLAG_INERTIA\",\"MSGESTURE_FLAG_NONE\",\"MSPOINTER_TYPE_MOUSE\",\"MSPOINTER_TYPE_PEN\",\"MSPOINTER_TYPE_TOUCH\",\"MS_ASYNC_CALLBACK_STATUS_ASSIGN_DELEGATE\",\"MS_ASYNC_CALLBACK_STATUS_CANCEL\",\"MS_ASYNC_CALLBACK_STATUS_CHOOSEANY\",\"MS_ASYNC_CALLBACK_STATUS_ERROR\",\"MS_ASYNC_CALLBACK_STATUS_JOIN\",\"MS_ASYNC_OP_STATUS_CANCELED\",\"MS_ASYNC_OP_STATUS_ERROR\",\"MS_ASYNC_OP_STATUS_SUCCESS\",\"MS_MANIPULATION_STATE_ACTIVE\",\"MS_MANIPULATION_STATE_CANCELLED\",\"MS_MANIPULATION_STATE_COMMITTED\",\"MS_MANIPULATION_STATE_DRAGGING\",\"MS_MANIPULATION_STATE_INERTIA\",\"MS_MANIPULATION_STATE_PRESELECT\",\"MS_MANIPULATION_STATE_SELECTING\",\"MS_MANIPULATION_STATE_STOPPED\",\"MS_MEDIA_ERR_ENCRYPTED\",\"MS_MEDIA_KEYERR_CLIENT\",\"MS_MEDIA_KEYERR_DOMAIN\",\"MS_MEDIA_KEYERR_HARDWARECHANGE\",\"MS_MEDIA_KEYERR_OUTPUT\",\"MS_MEDIA_KEYERR_SERVICE\",\"MS_MEDIA_KEYERR_UNKNOWN\",\"Map\",\"Math\",\"MediaController\",\"MediaDevices\",\"MediaElementAudioSourceNode\",\"MediaEncryptedEvent\",\"MediaError\",\"MediaKeyError\",\"MediaKeyEvent\",\"MediaKeyMessageEvent\",\"MediaKeyNeededEvent\",\"MediaKeySession\",\"MediaKeyStatusMap\",\"MediaKeySystemAccess\",\"MediaKeys\",\"MediaList\",\"MediaQueryList\",\"MediaQueryListEvent\",\"MediaRecorder\",\"MediaSource\",\"MediaStream\",\"MediaStreamAudioDestinationNode\",\"MediaStreamAudioSourceNode\",\"MediaStreamEvent\",\"MediaStreamTrack\",\"MediaStreamTrackEvent\",\"MessageChannel\",\"MessageEvent\",\"MessagePort\",\"Methods\",\"MimeType\",\"MimeTypeArray\",\"MouseEvent\",\"MouseScrollEvent\",\"MozAnimation\",\"MozAnimationDelay\",\"MozAnimationDirection\",\"MozAnimationDuration\",\"MozAnimationFillMode\",\"MozAnimationIterationCount\",\"MozAnimationName\",\"MozAnimationPlayState\",\"MozAnimationTimingFunction\",\"MozAppearance\",\"MozBackfaceVisibility\",\"MozBinding\",\"MozBorderBottomColors\",\"MozBorderEnd\",\"MozBorderEndColor\",\"MozBorderEndStyle\",\"MozBorderEndWidth\",\"MozBorderImage\",\"MozBorderLeftColors\",\"MozBorderRightColors\",\"MozBorderStart\",\"MozBorderStartColor\",\"MozBorderStartStyle\",\"MozBorderStartWidth\",\"MozBorderTopColors\",\"MozBoxAlign\",\"MozBoxDirection\",\"MozBoxFlex\",\"MozBoxOrdinalGroup\",\"MozBoxOrient\",\"MozBoxPack\",\"MozBoxSizing\",\"MozCSSKeyframeRule\",\"MozCSSKeyframesRule\",\"MozColumnCount\",\"MozColumnFill\",\"MozColumnGap\",\"MozColumnRule\",\"MozColumnRuleColor\",\"MozColumnRuleStyle\",\"MozColumnRuleWidth\",\"MozColumnWidth\",\"MozColumns\",\"MozContactChangeEvent\",\"MozFloatEdge\",\"MozFontFeatureSettings\",\"MozFontLanguageOverride\",\"MozForceBrokenImageIcon\",\"MozHyphens\",\"MozImageRegion\",\"MozMarginEnd\",\"MozMarginStart\",\"MozMmsEvent\",\"MozMmsMessage\",\"MozMobileMessageThread\",\"MozOSXFontSmoothing\",\"MozOrient\",\"MozOutlineRadius\",\"MozOutlineRadiusBottomleft\",\"MozOutlineRadiusBottomright\",\"MozOutlineRadiusTopleft\",\"MozOutlineRadiusTopright\",\"MozPaddingEnd\",\"MozPaddingStart\",\"MozPerspective\",\"MozPerspectiveOrigin\",\"MozPowerManager\",\"MozSettingsEvent\",\"MozSmsEvent\",\"MozSmsMessage\",\"MozStackSizing\",\"MozTabSize\",\"MozTextAlignLast\",\"MozTextDecorationColor\",\"MozTextDecorationLine\",\"MozTextDecorationStyle\",\"MozTextSizeAdjust\",\"MozTransform\",\"MozTransformOrigin\",\"MozTransformStyle\",\"MozTransition\",\"MozTransitionDelay\",\"MozTransitionDuration\",\"MozTransitionProperty\",\"MozTransitionTimingFunction\",\"MozUserFocus\",\"MozUserInput\",\"MozUserModify\",\"MozUserSelect\",\"MozWindowDragging\",\"MozWindowShadow\",\"MutationEvent\",\"MutationObserver\",\"MutationRecord\",\"NAMESPACE_ERR\",\"NAMESPACE_RULE\",\"NEAREST\",\"NEAREST_MIPMAP_LINEAR\",\"NEAREST_MIPMAP_NEAREST\",\"NEGATIVE_INFINITY\",\"NETWORK_EMPTY\",\"NETWORK_ERR\",\"NETWORK_IDLE\",\"NETWORK_LOADED\",\"NETWORK_LOADING\",\"NETWORK_NO_SOURCE\",\"NEVER\",\"NEW\",\"NEXT\",\"NEXT_NO_DUPLICATE\",\"NICEST\",\"NODE_AFTER\",\"NODE_BEFORE\",\"NODE_BEFORE_AND_AFTER\",\"NODE_INSIDE\",\"NONE\",\"NON_TRANSIENT_ERR\",\"NOTATION_NODE\",\"NOTCH\",\"NOTEQUAL\",\"NOT_ALLOWED_ERR\",\"NOT_FOUND_ERR\",\"NOT_READABLE_ERR\",\"NOT_SUPPORTED_ERR\",\"NO_DATA_ALLOWED_ERR\",\"NO_ERR\",\"NO_ERROR\",\"NO_MODIFICATION_ALLOWED_ERR\",\"NUMBER_TYPE\",\"NUM_COMPRESSED_TEXTURE_FORMATS\",\"NaN\",\"NamedNodeMap\",\"Navigator\",\"NearbyLinks\",\"NetworkInformation\",\"Node\",\"NodeFilter\",\"NodeIterator\",\"NodeList\",\"Notation\",\"Notification\",\"NotifyPaintEvent\",\"Number\",\"NumberFormat\",\"OBSOLETE\",\"ONE\",\"ONE_MINUS_CONSTANT_ALPHA\",\"ONE_MINUS_CONSTANT_COLOR\",\"ONE_MINUS_DST_ALPHA\",\"ONE_MINUS_DST_COLOR\",\"ONE_MINUS_SRC_ALPHA\",\"ONE_MINUS_SRC_COLOR\",\"OPEN\",\"OPENED\",\"OPENING\",\"ORDERED_NODE_ITERATOR_TYPE\",\"ORDERED_NODE_SNAPSHOT_TYPE\",\"OUT_OF_MEMORY\",\"Object\",\"OfflineAudioCompletionEvent\",\"OfflineAudioContext\",\"OfflineResourceList\",\"Option\",\"OscillatorNode\",\"OverflowEvent\",\"PACK_ALIGNMENT\",\"PAGE_RULE\",\"PARSE_ERR\",\"PATHSEG_ARC_ABS\",\"PATHSEG_ARC_REL\",\"PATHSEG_CLOSEPATH\",\"PATHSEG_CURVETO_CUBIC_ABS\",\"PATHSEG_CURVETO_CUBIC_REL\",\"PATHSEG_CURVETO_CUBIC_SMOOTH_ABS\",\"PATHSEG_CURVETO_CUBIC_SMOOTH_REL\",\"PATHSEG_CURVETO_QUADRATIC_ABS\",\"PATHSEG_CURVETO_QUADRATIC_REL\",\"PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS\",\"PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL\",\"PATHSEG_LINETO_ABS\",\"PATHSEG_LINETO_HORIZONTAL_ABS\",\"PATHSEG_LINETO_HORIZONTAL_REL\",\"PATHSEG_LINETO_REL\",\"PATHSEG_LINETO_VERTICAL_ABS\",\"PATHSEG_LINETO_VERTICAL_REL\",\"PATHSEG_MOVETO_ABS\",\"PATHSEG_MOVETO_REL\",\"PATHSEG_UNKNOWN\",\"PATH_EXISTS_ERR\",\"PEAKING\",\"PERMISSION_DENIED\",\"PERSISTENT\",\"PI\",\"PLAYING_STATE\",\"POINTS\",\"POLYGON_OFFSET_FACTOR\",\"POLYGON_OFFSET_FILL\",\"POLYGON_OFFSET_UNITS\",\"POSITION_UNAVAILABLE\",\"POSITIVE_INFINITY\",\"PREV\",\"PREV_NO_DUPLICATE\",\"PROCESSING_INSTRUCTION_NODE\",\"PageChangeEvent\",\"PageTransitionEvent\",\"PaintRequest\",\"PaintRequestList\",\"PannerNode\",\"Path2D\",\"Performance\",\"PerformanceEntry\",\"PerformanceMark\",\"PerformanceMeasure\",\"PerformanceNavigation\",\"PerformanceResourceTiming\",\"PerformanceTiming\",\"PeriodicWave\",\"Plugin\",\"PluginArray\",\"PopStateEvent\",\"PopupBlockedEvent\",\"ProcessingInstruction\",\"ProgressEvent\",\"Promise\",\"PropertyNodeList\",\"Proxy\",\"PushManager\",\"PushSubscription\",\"Q\",\"QUOTA_ERR\",\"QUOTA_EXCEEDED_ERR\",\"QueryInterface\",\"READ_ONLY\",\"READ_ONLY_ERR\",\"READ_WRITE\",\"RED_BITS\",\"REMOVAL\",\"RENDERBUFFER\",\"RENDERBUFFER_ALPHA_SIZE\",\"RENDERBUFFER_BINDING\",\"RENDERBUFFER_BLUE_SIZE\",\"RENDERBUFFER_DEPTH_SIZE\",\"RENDERBUFFER_GREEN_SIZE\",\"RENDERBUFFER_HEIGHT\",\"RENDERBUFFER_INTERNAL_FORMAT\",\"RENDERBUFFER_RED_SIZE\",\"RENDERBUFFER_STENCIL_SIZE\",\"RENDERBUFFER_WIDTH\",\"RENDERER\",\"RENDERING_INTENT_ABSOLUTE_COLORIMETRIC\",\"RENDERING_INTENT_AUTO\",\"RENDERING_INTENT_PERCEPTUAL\",\"RENDERING_INTENT_RELATIVE_COLORIMETRIC\",\"RENDERING_INTENT_SATURATION\",\"RENDERING_INTENT_UNKNOWN\",\"REPEAT\",\"REPLACE\",\"RGB\",\"RGB565\",\"RGB5_A1\",\"RGBA\",\"RGBA4\",\"RGBColor\",\"ROTATION_CLOCKWISE\",\"ROTATION_COUNTERCLOCKWISE\",\"RTCDataChannelEvent\",\"RTCIceCandidate\",\"RTCPeerConnectionIceEvent\",\"RTCRtpReceiver\",\"RTCRtpSender\",\"RTCSessionDescription\",\"RTCStatsReport\",\"RadioNodeList\",\"Range\",\"RangeError\",\"RangeException\",\"RecordErrorEvent\",\"Rect\",\"ReferenceError\",\"RegExp\",\"Request\",\"Response\",\"SAMPLER_2D\",\"SAMPLER_CUBE\",\"SAMPLES\",\"SAMPLE_ALPHA_TO_COVERAGE\",\"SAMPLE_BUFFERS\",\"SAMPLE_COVERAGE\",\"SAMPLE_COVERAGE_INVERT\",\"SAMPLE_COVERAGE_VALUE\",\"SAWTOOTH\",\"SCHEDULED_STATE\",\"SCISSOR_BOX\",\"SCISSOR_TEST\",\"SCROLL_PAGE_DOWN\",\"SCROLL_PAGE_UP\",\"SDP_ANSWER\",\"SDP_OFFER\",\"SDP_PRANSWER\",\"SECURITY_ERR\",\"SELECT\",\"SERIALIZE_ERR\",\"SEVERITY_ERROR\",\"SEVERITY_FATAL_ERROR\",\"SEVERITY_WARNING\",\"SHADER_COMPILER\",\"SHADER_TYPE\",\"SHADING_LANGUAGE_VERSION\",\"SHIFT_MASK\",\"SHORT\",\"SHOWING\",\"SHOW_ALL\",\"SHOW_ATTRIBUTE\",\"SHOW_CDATA_SECTION\",\"SHOW_COMMENT\",\"SHOW_DOCUMENT\",\"SHOW_DOCUMENT_FRAGMENT\",\"SHOW_DOCUMENT_TYPE\",\"SHOW_ELEMENT\",\"SHOW_ENTITY\",\"SHOW_ENTITY_REFERENCE\",\"SHOW_NOTATION\",\"SHOW_PROCESSING_INSTRUCTION\",\"SHOW_TEXT\",\"SINE\",\"SOUNDFIELD\",\"SQLException\",\"SQRT1_2\",\"SQRT2\",\"SQUARE\",\"SRC_ALPHA\",\"SRC_ALPHA_SATURATE\",\"SRC_COLOR\",\"START_TO_END\",\"START_TO_START\",\"STATIC_DRAW\",\"STENCIL_ATTACHMENT\",\"STENCIL_BACK_FAIL\",\"STENCIL_BACK_FUNC\",\"STENCIL_BACK_PASS_DEPTH_FAIL\",\"STENCIL_BACK_PASS_DEPTH_PASS\",\"STENCIL_BACK_REF\",\"STENCIL_BACK_VALUE_MASK\",\"STENCIL_BACK_WRITEMASK\",\"STENCIL_BITS\",\"STENCIL_BUFFER_BIT\",\"STENCIL_CLEAR_VALUE\",\"STENCIL_FAIL\",\"STENCIL_FUNC\",\"STENCIL_INDEX\",\"STENCIL_INDEX8\",\"STENCIL_PASS_DEPTH_FAIL\",\"STENCIL_PASS_DEPTH_PASS\",\"STENCIL_REF\",\"STENCIL_TEST\",\"STENCIL_VALUE_MASK\",\"STENCIL_WRITEMASK\",\"STREAM_DRAW\",\"STRING_TYPE\",\"STYLE_RULE\",\"SUBPIXEL_BITS\",\"SUPPORTS_RULE\",\"SVGAElement\",\"SVGAltGlyphDefElement\",\"SVGAltGlyphElement\",\"SVGAltGlyphItemElement\",\"SVGAngle\",\"SVGAnimateColorElement\",\"SVGAnimateElement\",\"SVGAnimateMotionElement\",\"SVGAnimateTransformElement\",\"SVGAnimatedAngle\",\"SVGAnimatedBoolean\",\"SVGAnimatedEnumeration\",\"SVGAnimatedInteger\",\"SVGAnimatedLength\",\"SVGAnimatedLengthList\",\"SVGAnimatedNumber\",\"SVGAnimatedNumberList\",\"SVGAnimatedPreserveAspectRatio\",\"SVGAnimatedRect\",\"SVGAnimatedString\",\"SVGAnimatedTransformList\",\"SVGAnimationElement\",\"SVGCircleElement\",\"SVGClipPathElement\",\"SVGColor\",\"SVGComponentTransferFunctionElement\",\"SVGCursorElement\",\"SVGDefsElement\",\"SVGDescElement\",\"SVGDiscardElement\",\"SVGDocument\",\"SVGElement\",\"SVGElementInstance\",\"SVGElementInstanceList\",\"SVGEllipseElement\",\"SVGException\",\"SVGFEBlendElement\",\"SVGFEColorMatrixElement\",\"SVGFEComponentTransferElement\",\"SVGFECompositeElement\",\"SVGFEConvolveMatrixElement\",\"SVGFEDiffuseLightingElement\",\"SVGFEDisplacementMapElement\",\"SVGFEDistantLightElement\",\"SVGFEDropShadowElement\",\"SVGFEFloodElement\",\"SVGFEFuncAElement\",\"SVGFEFuncBElement\",\"SVGFEFuncGElement\",\"SVGFEFuncRElement\",\"SVGFEGaussianBlurElement\",\"SVGFEImageElement\",\"SVGFEMergeElement\",\"SVGFEMergeNodeElement\",\"SVGFEMorphologyElement\",\"SVGFEOffsetElement\",\"SVGFEPointLightElement\",\"SVGFESpecularLightingElement\",\"SVGFESpotLightElement\",\"SVGFETileElement\",\"SVGFETurbulenceElement\",\"SVGFilterElement\",\"SVGFontElement\",\"SVGFontFaceElement\",\"SVGFontFaceFormatElement\",\"SVGFontFaceNameElement\",\"SVGFontFaceSrcElement\",\"SVGFontFaceUriElement\",\"SVGForeignObjectElement\",\"SVGGElement\",\"SVGGeometryElement\",\"SVGGlyphElement\",\"SVGGlyphRefElement\",\"SVGGradientElement\",\"SVGGraphicsElement\",\"SVGHKernElement\",\"SVGImageElement\",\"SVGLength\",\"SVGLengthList\",\"SVGLineElement\",\"SVGLinearGradientElement\",\"SVGMPathElement\",\"SVGMarkerElement\",\"SVGMaskElement\",\"SVGMatrix\",\"SVGMetadataElement\",\"SVGMissingGlyphElement\",\"SVGNumber\",\"SVGNumberList\",\"SVGPaint\",\"SVGPathElement\",\"SVGPathSeg\",\"SVGPathSegArcAbs\",\"SVGPathSegArcRel\",\"SVGPathSegClosePath\",\"SVGPathSegCurvetoCubicAbs\",\"SVGPathSegCurvetoCubicRel\",\"SVGPathSegCurvetoCubicSmoothAbs\",\"SVGPathSegCurvetoCubicSmoothRel\",\"SVGPathSegCurvetoQuadraticAbs\",\"SVGPathSegCurvetoQuadraticRel\",\"SVGPathSegCurvetoQuadraticSmoothAbs\",\"SVGPathSegCurvetoQuadraticSmoothRel\",\"SVGPathSegLinetoAbs\",\"SVGPathSegLinetoHorizontalAbs\",\"SVGPathSegLinetoHorizontalRel\",\"SVGPathSegLinetoRel\",\"SVGPathSegLinetoVerticalAbs\",\"SVGPathSegLinetoVerticalRel\",\"SVGPathSegList\",\"SVGPathSegMovetoAbs\",\"SVGPathSegMovetoRel\",\"SVGPatternElement\",\"SVGPoint\",\"SVGPointList\",\"SVGPolygonElement\",\"SVGPolylineElement\",\"SVGPreserveAspectRatio\",\"SVGRadialGradientElement\",\"SVGRect\",\"SVGRectElement\",\"SVGRenderingIntent\",\"SVGSVGElement\",\"SVGScriptElement\",\"SVGSetElement\",\"SVGStopElement\",\"SVGStringList\",\"SVGStyleElement\",\"SVGSwitchElement\",\"SVGSymbolElement\",\"SVGTRefElement\",\"SVGTSpanElement\",\"SVGTextContentElement\",\"SVGTextElement\",\"SVGTextPathElement\",\"SVGTextPositioningElement\",\"SVGTitleElement\",\"SVGTransform\",\"SVGTransformList\",\"SVGUnitTypes\",\"SVGUseElement\",\"SVGVKernElement\",\"SVGViewElement\",\"SVGViewSpec\",\"SVGZoomAndPan\",\"SVGZoomEvent\",\"SVG_ANGLETYPE_DEG\",\"SVG_ANGLETYPE_GRAD\",\"SVG_ANGLETYPE_RAD\",\"SVG_ANGLETYPE_UNKNOWN\",\"SVG_ANGLETYPE_UNSPECIFIED\",\"SVG_CHANNEL_A\",\"SVG_CHANNEL_B\",\"SVG_CHANNEL_G\",\"SVG_CHANNEL_R\",\"SVG_CHANNEL_UNKNOWN\",\"SVG_COLORTYPE_CURRENTCOLOR\",\"SVG_COLORTYPE_RGBCOLOR\",\"SVG_COLORTYPE_RGBCOLOR_ICCCOLOR\",\"SVG_COLORTYPE_UNKNOWN\",\"SVG_EDGEMODE_DUPLICATE\",\"SVG_EDGEMODE_NONE\",\"SVG_EDGEMODE_UNKNOWN\",\"SVG_EDGEMODE_WRAP\",\"SVG_FEBLEND_MODE_COLOR\",\"SVG_FEBLEND_MODE_COLOR_BURN\",\"SVG_FEBLEND_MODE_COLOR_DODGE\",\"SVG_FEBLEND_MODE_DARKEN\",\"SVG_FEBLEND_MODE_DIFFERENCE\",\"SVG_FEBLEND_MODE_EXCLUSION\",\"SVG_FEBLEND_MODE_HARD_LIGHT\",\"SVG_FEBLEND_MODE_HUE\",\"SVG_FEBLEND_MODE_LIGHTEN\",\"SVG_FEBLEND_MODE_LUMINOSITY\",\"SVG_FEBLEND_MODE_MULTIPLY\",\"SVG_FEBLEND_MODE_NORMAL\",\"SVG_FEBLEND_MODE_OVERLAY\",\"SVG_FEBLEND_MODE_SATURATION\",\"SVG_FEBLEND_MODE_SCREEN\",\"SVG_FEBLEND_MODE_SOFT_LIGHT\",\"SVG_FEBLEND_MODE_UNKNOWN\",\"SVG_FECOLORMATRIX_TYPE_HUEROTATE\",\"SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA\",\"SVG_FECOLORMATRIX_TYPE_MATRIX\",\"SVG_FECOLORMATRIX_TYPE_SATURATE\",\"SVG_FECOLORMATRIX_TYPE_UNKNOWN\",\"SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE\",\"SVG_FECOMPONENTTRANSFER_TYPE_GAMMA\",\"SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY\",\"SVG_FECOMPONENTTRANSFER_TYPE_LINEAR\",\"SVG_FECOMPONENTTRANSFER_TYPE_TABLE\",\"SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN\",\"SVG_FECOMPOSITE_OPERATOR_ARITHMETIC\",\"SVG_FECOMPOSITE_OPERATOR_ATOP\",\"SVG_FECOMPOSITE_OPERATOR_IN\",\"SVG_FECOMPOSITE_OPERATOR_OUT\",\"SVG_FECOMPOSITE_OPERATOR_OVER\",\"SVG_FECOMPOSITE_OPERATOR_UNKNOWN\",\"SVG_FECOMPOSITE_OPERATOR_XOR\",\"SVG_INVALID_VALUE_ERR\",\"SVG_LENGTHTYPE_CM\",\"SVG_LENGTHTYPE_EMS\",\"SVG_LENGTHTYPE_EXS\",\"SVG_LENGTHTYPE_IN\",\"SVG_LENGTHTYPE_MM\",\"SVG_LENGTHTYPE_NUMBER\",\"SVG_LENGTHTYPE_PC\",\"SVG_LENGTHTYPE_PERCENTAGE\",\"SVG_LENGTHTYPE_PT\",\"SVG_LENGTHTYPE_PX\",\"SVG_LENGTHTYPE_UNKNOWN\",\"SVG_MARKERUNITS_STROKEWIDTH\",\"SVG_MARKERUNITS_UNKNOWN\",\"SVG_MARKERUNITS_USERSPACEONUSE\",\"SVG_MARKER_ORIENT_ANGLE\",\"SVG_MARKER_ORIENT_AUTO\",\"SVG_MARKER_ORIENT_UNKNOWN\",\"SVG_MASKTYPE_ALPHA\",\"SVG_MASKTYPE_LUMINANCE\",\"SVG_MATRIX_NOT_INVERTABLE\",\"SVG_MEETORSLICE_MEET\",\"SVG_MEETORSLICE_SLICE\",\"SVG_MEETORSLICE_UNKNOWN\",\"SVG_MORPHOLOGY_OPERATOR_DILATE\",\"SVG_MORPHOLOGY_OPERATOR_ERODE\",\"SVG_MORPHOLOGY_OPERATOR_UNKNOWN\",\"SVG_PAINTTYPE_CURRENTCOLOR\",\"SVG_PAINTTYPE_NONE\",\"SVG_PAINTTYPE_RGBCOLOR\",\"SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR\",\"SVG_PAINTTYPE_UNKNOWN\",\"SVG_PAINTTYPE_URI\",\"SVG_PAINTTYPE_URI_CURRENTCOLOR\",\"SVG_PAINTTYPE_URI_NONE\",\"SVG_PAINTTYPE_URI_RGBCOLOR\",\"SVG_PAINTTYPE_URI_RGBCOLOR_ICCCOLOR\",\"SVG_PRESERVEASPECTRATIO_NONE\",\"SVG_PRESERVEASPECTRATIO_UNKNOWN\",\"SVG_PRESERVEASPECTRATIO_XMAXYMAX\",\"SVG_PRESERVEASPECTRATIO_XMAXYMID\",\"SVG_PRESERVEASPECTRATIO_XMAXYMIN\",\"SVG_PRESERVEASPECTRATIO_XMIDYMAX\",\"SVG_PRESERVEASPECTRATIO_XMIDYMID\",\"SVG_PRESERVEASPECTRATIO_XMIDYMIN\",\"SVG_PRESERVEASPECTRATIO_XMINYMAX\",\"SVG_PRESERVEASPECTRATIO_XMINYMID\",\"SVG_PRESERVEASPECTRATIO_XMINYMIN\",\"SVG_SPREADMETHOD_PAD\",\"SVG_SPREADMETHOD_REFLECT\",\"SVG_SPREADMETHOD_REPEAT\",\"SVG_SPREADMETHOD_UNKNOWN\",\"SVG_STITCHTYPE_NOSTITCH\",\"SVG_STITCHTYPE_STITCH\",\"SVG_STITCHTYPE_UNKNOWN\",\"SVG_TRANSFORM_MATRIX\",\"SVG_TRANSFORM_ROTATE\",\"SVG_TRANSFORM_SCALE\",\"SVG_TRANSFORM_SKEWX\",\"SVG_TRANSFORM_SKEWY\",\"SVG_TRANSFORM_TRANSLATE\",\"SVG_TRANSFORM_UNKNOWN\",\"SVG_TURBULENCE_TYPE_FRACTALNOISE\",\"SVG_TURBULENCE_TYPE_TURBULENCE\",\"SVG_TURBULENCE_TYPE_UNKNOWN\",\"SVG_UNIT_TYPE_OBJECTBOUNDINGBOX\",\"SVG_UNIT_TYPE_UNKNOWN\",\"SVG_UNIT_TYPE_USERSPACEONUSE\",\"SVG_WRONG_TYPE_ERR\",\"SVG_ZOOMANDPAN_DISABLE\",\"SVG_ZOOMANDPAN_MAGNIFY\",\"SVG_ZOOMANDPAN_UNKNOWN\",\"SYNTAX_ERR\",\"SavedPages\",\"Screen\",\"ScreenOrientation\",\"Script\",\"ScriptProcessorNode\",\"ScrollAreaEvent\",\"SecurityPolicyViolationEvent\",\"Selection\",\"ServiceWorker\",\"ServiceWorkerContainer\",\"ServiceWorkerRegistration\",\"SessionDescription\",\"Set\",\"ShadowRoot\",\"SharedWorker\",\"SimpleGestureEvent\",\"SpeechSynthesisEvent\",\"SpeechSynthesisUtterance\",\"StopIteration\",\"Storage\",\"StorageEvent\",\"String\",\"StyleSheet\",\"StyleSheetList\",\"SubtleCrypto\",\"Symbol\",\"SyntaxError\",\"TEMPORARY\",\"TEXTPATH_METHODTYPE_ALIGN\",\"TEXTPATH_METHODTYPE_STRETCH\",\"TEXTPATH_METHODTYPE_UNKNOWN\",\"TEXTPATH_SPACINGTYPE_AUTO\",\"TEXTPATH_SPACINGTYPE_EXACT\",\"TEXTPATH_SPACINGTYPE_UNKNOWN\",\"TEXTURE\",\"TEXTURE0\",\"TEXTURE1\",\"TEXTURE10\",\"TEXTURE11\",\"TEXTURE12\",\"TEXTURE13\",\"TEXTURE14\",\"TEXTURE15\",\"TEXTURE16\",\"TEXTURE17\",\"TEXTURE18\",\"TEXTURE19\",\"TEXTURE2\",\"TEXTURE20\",\"TEXTURE21\",\"TEXTURE22\",\"TEXTURE23\",\"TEXTURE24\",\"TEXTURE25\",\"TEXTURE26\",\"TEXTURE27\",\"TEXTURE28\",\"TEXTURE29\",\"TEXTURE3\",\"TEXTURE30\",\"TEXTURE31\",\"TEXTURE4\",\"TEXTURE5\",\"TEXTURE6\",\"TEXTURE7\",\"TEXTURE8\",\"TEXTURE9\",\"TEXTURE_2D\",\"TEXTURE_BINDING_2D\",\"TEXTURE_BINDING_CUBE_MAP\",\"TEXTURE_CUBE_MAP\",\"TEXTURE_CUBE_MAP_NEGATIVE_X\",\"TEXTURE_CUBE_MAP_NEGATIVE_Y\",\"TEXTURE_CUBE_MAP_NEGATIVE_Z\",\"TEXTURE_CUBE_MAP_POSITIVE_X\",\"TEXTURE_CUBE_MAP_POSITIVE_Y\",\"TEXTURE_CUBE_MAP_POSITIVE_Z\",\"TEXTURE_MAG_FILTER\",\"TEXTURE_MAX_ANISOTROPY_EXT\",\"TEXTURE_MIN_FILTER\",\"TEXTURE_WRAP_S\",\"TEXTURE_WRAP_T\",\"TEXT_NODE\",\"TIMEOUT\",\"TIMEOUT_ERR\",\"TOO_LARGE_ERR\",\"TRANSACTION_INACTIVE_ERR\",\"TRIANGLE\",\"TRIANGLES\",\"TRIANGLE_FAN\",\"TRIANGLE_STRIP\",\"TYPE_BACK_FORWARD\",\"TYPE_ERR\",\"TYPE_MISMATCH_ERR\",\"TYPE_NAVIGATE\",\"TYPE_RELOAD\",\"TYPE_RESERVED\",\"Text\",\"TextDecoder\",\"TextEncoder\",\"TextEvent\",\"TextMetrics\",\"TextTrack\",\"TextTrackCue\",\"TextTrackCueList\",\"TextTrackList\",\"TimeEvent\",\"TimeRanges\",\"Touch\",\"TouchEvent\",\"TouchList\",\"TrackEvent\",\"TransitionEvent\",\"TreeWalker\",\"TypeError\",\"UIEvent\",\"UNCACHED\",\"UNKNOWN_ERR\",\"UNKNOWN_RULE\",\"UNMASKED_RENDERER_WEBGL\",\"UNMASKED_VENDOR_WEBGL\",\"UNORDERED_NODE_ITERATOR_TYPE\",\"UNORDERED_NODE_SNAPSHOT_TYPE\",\"UNPACK_ALIGNMENT\",\"UNPACK_COLORSPACE_CONVERSION_WEBGL\",\"UNPACK_FLIP_Y_WEBGL\",\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\",\"UNSCHEDULED_STATE\",\"UNSENT\",\"UNSIGNED_BYTE\",\"UNSIGNED_INT\",\"UNSIGNED_SHORT\",\"UNSIGNED_SHORT_4_4_4_4\",\"UNSIGNED_SHORT_5_5_5_1\",\"UNSIGNED_SHORT_5_6_5\",\"UNSPECIFIED_EVENT_TYPE_ERR\",\"UPDATEREADY\",\"URIError\",\"URL\",\"URLSearchParams\",\"URLUnencoded\",\"URL_MISMATCH_ERR\",\"UTC\",\"Uint16Array\",\"Uint32Array\",\"Uint8Array\",\"Uint8ClampedArray\",\"UserMessageHandler\",\"UserMessageHandlersNamespace\",\"UserProximityEvent\",\"VALIDATE_STATUS\",\"VALIDATION_ERR\",\"VARIABLES_RULE\",\"VENDOR\",\"VERSION\",\"VERSION_CHANGE\",\"VERSION_ERR\",\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\",\"VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE\",\"VERTEX_ATTRIB_ARRAY_ENABLED\",\"VERTEX_ATTRIB_ARRAY_NORMALIZED\",\"VERTEX_ATTRIB_ARRAY_POINTER\",\"VERTEX_ATTRIB_ARRAY_SIZE\",\"VERTEX_ATTRIB_ARRAY_STRIDE\",\"VERTEX_ATTRIB_ARRAY_TYPE\",\"VERTEX_SHADER\",\"VERTICAL\",\"VERTICAL_AXIS\",\"VER_ERR\",\"VIEWPORT\",\"VIEWPORT_RULE\",\"VTTCue\",\"VTTRegion\",\"ValidityState\",\"VideoStreamTrack\",\"WEBKIT_FILTER_RULE\",\"WEBKIT_KEYFRAMES_RULE\",\"WEBKIT_KEYFRAME_RULE\",\"WEBKIT_REGION_RULE\",\"WRONG_DOCUMENT_ERR\",\"WaveShaperNode\",\"WeakMap\",\"WeakSet\",\"WebGLActiveInfo\",\"WebGLBuffer\",\"WebGLContextEvent\",\"WebGLFramebuffer\",\"WebGLProgram\",\"WebGLRenderbuffer\",\"WebGLRenderingContext\",\"WebGLShader\",\"WebGLShaderPrecisionFormat\",\"WebGLTexture\",\"WebGLUniformLocation\",\"WebGLVertexArray\",\"WebKitAnimationEvent\",\"WebKitBlobBuilder\",\"WebKitCSSFilterRule\",\"WebKitCSSFilterValue\",\"WebKitCSSKeyframeRule\",\"WebKitCSSKeyframesRule\",\"WebKitCSSMatrix\",\"WebKitCSSRegionRule\",\"WebKitCSSTransformValue\",\"WebKitDataCue\",\"WebKitGamepad\",\"WebKitMediaKeyError\",\"WebKitMediaKeyMessageEvent\",\"WebKitMediaKeySession\",\"WebKitMediaKeys\",\"WebKitMediaSource\",\"WebKitMutationObserver\",\"WebKitNamespace\",\"WebKitPlaybackTargetAvailabilityEvent\",\"WebKitPoint\",\"WebKitShadowRoot\",\"WebKitSourceBuffer\",\"WebKitSourceBufferList\",\"WebKitTransitionEvent\",\"WebSocket\",\"WheelEvent\",\"Window\",\"Worker\",\"XMLDocument\",\"XMLHttpRequest\",\"XMLHttpRequestEventTarget\",\"XMLHttpRequestException\",\"XMLHttpRequestProgressEvent\",\"XMLHttpRequestUpload\",\"XMLSerializer\",\"XMLStylesheetProcessingInstruction\",\"XPathEvaluator\",\"XPathException\",\"XPathExpression\",\"XPathNSResolver\",\"XPathResult\",\"XSLTProcessor\",\"ZERO\",\"_XD0M_\",\"_YD0M_\",\"__defineGetter__\",\"__defineSetter__\",\"__lookupGetter__\",\"__lookupSetter__\",\"__opera\",\"__proto__\",\"_browserjsran\",\"a\",\"aLink\",\"abbr\",\"abort\",\"abs\",\"absolute\",\"acceleration\",\"accelerationIncludingGravity\",\"accelerator\",\"accept\",\"acceptCharset\",\"acceptNode\",\"accessKey\",\"accessKeyLabel\",\"accuracy\",\"acos\",\"acosh\",\"action\",\"actionURL\",\"active\",\"activeCues\",\"activeElement\",\"activeSourceBuffers\",\"activeSourceCount\",\"activeTexture\",\"add\",\"addBehavior\",\"addCandidate\",\"addColorStop\",\"addCue\",\"addElement\",\"addEventListener\",\"addFilter\",\"addFromString\",\"addFromUri\",\"addIceCandidate\",\"addImport\",\"addListener\",\"addNamed\",\"addPageRule\",\"addPath\",\"addPointer\",\"addRange\",\"addRegion\",\"addRule\",\"addSearchEngine\",\"addSourceBuffer\",\"addStream\",\"addTextTrack\",\"addTrack\",\"addWakeLockListener\",\"addedNodes\",\"additionalName\",\"additiveSymbols\",\"addons\",\"adoptNode\",\"adr\",\"advance\",\"alert\",\"algorithm\",\"align\",\"align-content\",\"align-items\",\"align-self\",\"alignContent\",\"alignItems\",\"alignSelf\",\"alignmentBaseline\",\"alinkColor\",\"all\",\"allSettled\",\"allowFullscreen\",\"allowedDirections\",\"alpha\",\"alt\",\"altGraphKey\",\"altHtml\",\"altKey\",\"altLeft\",\"altitude\",\"altitudeAccuracy\",\"amplitude\",\"ancestorOrigins\",\"anchor\",\"anchorNode\",\"anchorOffset\",\"anchors\",\"angle\",\"animVal\",\"animate\",\"animatedInstanceRoot\",\"animatedNormalizedPathSegList\",\"animatedPathSegList\",\"animatedPoints\",\"animation\",\"animation-delay\",\"animation-direction\",\"animation-duration\",\"animation-fill-mode\",\"animation-iteration-count\",\"animation-name\",\"animation-play-state\",\"animation-timing-function\",\"animationDelay\",\"animationDirection\",\"animationDuration\",\"animationFillMode\",\"animationIterationCount\",\"animationName\",\"animationPlayState\",\"animationStartTime\",\"animationTimingFunction\",\"animationsPaused\",\"anniversary\",\"any\",\"app\",\"appCodeName\",\"appMinorVersion\",\"appName\",\"appNotifications\",\"appVersion\",\"append\",\"appendBuffer\",\"appendChild\",\"appendData\",\"appendItem\",\"appendMedium\",\"appendNamed\",\"appendRule\",\"appendStream\",\"appendWindowEnd\",\"appendWindowStart\",\"applets\",\"applicationCache\",\"apply\",\"applyElement\",\"arc\",\"arcTo\",\"archive\",\"areas\",\"arguments\",\"arrayBuffer\",\"asin\",\"asinh\",\"assert\",\"assign\",\"async\",\"atEnd\",\"atan\",\"atan2\",\"atanh\",\"atob\",\"attachEvent\",\"attachShader\",\"attachShadow\",\"attachments\",\"attack\",\"attrChange\",\"attrName\",\"attributeFilter\",\"attributeName\",\"attributeNamespace\",\"attributeOldValue\",\"attributes\",\"audioTracks\",\"autoIncrement\",\"autobuffer\",\"autocapitalize\",\"autocomplete\",\"autocorrect\",\"autofocus\",\"autoplay\",\"availHeight\",\"availLeft\",\"availTop\",\"availWidth\",\"availability\",\"available\",\"aversion\",\"axes\",\"axis\",\"azimuth\",\"b\",\"back\",\"backface-visibility\",\"backfaceVisibility\",\"background\",\"background-attachment\",\"background-blend-mode\",\"background-clip\",\"background-color\",\"background-image\",\"background-origin\",\"background-position\",\"background-repeat\",\"background-size\",\"backgroundAttachment\",\"backgroundBlendMode\",\"backgroundClip\",\"backgroundColor\",\"backgroundImage\",\"backgroundOrigin\",\"backgroundPosition\",\"backgroundPositionX\",\"backgroundPositionY\",\"backgroundRepeat\",\"backgroundSize\",\"badInput\",\"balance\",\"baseFrequencyX\",\"baseFrequencyY\",\"baseNode\",\"baseOffset\",\"baseURI\",\"baseVal\",\"baselineShift\",\"battery\",\"bday\",\"beginElement\",\"beginElementAt\",\"beginPath\",\"behavior\",\"behaviorCookie\",\"behaviorPart\",\"behaviorUrns\",\"beta\",\"bezierCurveTo\",\"bgColor\",\"bgProperties\",\"bias\",\"big\",\"binaryType\",\"bind\",\"bindAttribLocation\",\"bindBuffer\",\"bindFramebuffer\",\"bindRenderbuffer\",\"bindTexture\",\"blendColor\",\"blendEquation\",\"blendEquationSeparate\",\"blendFunc\",\"blendFuncSeparate\",\"blink\",\"blob\",\"blockDirection\",\"blue\",\"blur\",\"body\",\"bodyUsed\",\"bold\",\"bookmarks\",\"booleanValue\",\"border\",\"border-bottom\",\"border-bottom-color\",\"border-bottom-left-radius\",\"border-bottom-right-radius\",\"border-bottom-style\",\"border-bottom-width\",\"border-collapse\",\"border-color\",\"border-image\",\"border-image-outset\",\"border-image-repeat\",\"border-image-slice\",\"border-image-source\",\"border-image-width\",\"border-left\",\"border-left-color\",\"border-left-style\",\"border-left-width\",\"border-radius\",\"border-right\",\"border-right-color\",\"border-right-style\",\"border-right-width\",\"border-spacing\",\"border-style\",\"border-top\",\"border-top-color\",\"border-top-left-radius\",\"border-top-right-radius\",\"border-top-style\",\"border-top-width\",\"border-width\",\"borderBottom\",\"borderBottomColor\",\"borderBottomLeftRadius\",\"borderBottomRightRadius\",\"borderBottomStyle\",\"borderBottomWidth\",\"borderCollapse\",\"borderColor\",\"borderColorDark\",\"borderColorLight\",\"borderImage\",\"borderImageOutset\",\"borderImageRepeat\",\"borderImageSlice\",\"borderImageSource\",\"borderImageWidth\",\"borderLeft\",\"borderLeftColor\",\"borderLeftStyle\",\"borderLeftWidth\",\"borderRadius\",\"borderRight\",\"borderRightColor\",\"borderRightStyle\",\"borderRightWidth\",\"borderSpacing\",\"borderStyle\",\"borderTop\",\"borderTopColor\",\"borderTopLeftRadius\",\"borderTopRightRadius\",\"borderTopStyle\",\"borderTopWidth\",\"borderWidth\",\"bottom\",\"bottomMargin\",\"bound\",\"boundElements\",\"boundingClientRect\",\"boundingHeight\",\"boundingLeft\",\"boundingTop\",\"boundingWidth\",\"bounds\",\"box-decoration-break\",\"box-shadow\",\"box-sizing\",\"boxDecorationBreak\",\"boxShadow\",\"boxSizing\",\"breakAfter\",\"breakBefore\",\"breakInside\",\"browserLanguage\",\"btoa\",\"bubbles\",\"buffer\",\"bufferData\",\"bufferDepth\",\"bufferSize\",\"bufferSubData\",\"buffered\",\"bufferedAmount\",\"buildID\",\"buildNumber\",\"button\",\"buttonID\",\"buttons\",\"byteLength\",\"byteOffset\",\"c\",\"call\",\"caller\",\"canBeFormatted\",\"canBeMounted\",\"canBeShared\",\"canHaveChildren\",\"canHaveHTML\",\"canPlayType\",\"cancel\",\"cancelAnimationFrame\",\"cancelBubble\",\"cancelScheduledValues\",\"cancelable\",\"candidate\",\"canvas\",\"caption\",\"caption-side\",\"captionSide\",\"capture\",\"captureEvents\",\"captureStackTrace\",\"caretPositionFromPoint\",\"caretRangeFromPoint\",\"cast\",\"catch\",\"category\",\"cbrt\",\"cd\",\"ceil\",\"cellIndex\",\"cellPadding\",\"cellSpacing\",\"cells\",\"ch\",\"chOff\",\"chain\",\"challenge\",\"changedTouches\",\"channel\",\"channelCount\",\"channelCountMode\",\"channelInterpretation\",\"char\",\"charAt\",\"charCode\",\"charCodeAt\",\"charIndex\",\"characterData\",\"characterDataOldValue\",\"characterSet\",\"charging\",\"chargingTime\",\"charset\",\"checkEnclosure\",\"checkFramebufferStatus\",\"checkIntersection\",\"checkValidity\",\"checked\",\"childElementCount\",\"childList\",\"childNodes\",\"children\",\"chrome\",\"ciphertext\",\"cite\",\"classList\",\"className\",\"classid\",\"clear\",\"clearAttributes\",\"clearColor\",\"clearData\",\"clearDepth\",\"clearImmediate\",\"clearInterval\",\"clearMarks\",\"clearMeasures\",\"clearParameters\",\"clearRect\",\"clearResourceTimings\",\"clearShadow\",\"clearStencil\",\"clearTimeout\",\"clearWatch\",\"click\",\"clickCount\",\"clientHeight\",\"clientInformation\",\"clientLeft\",\"clientRect\",\"clientRects\",\"clientTop\",\"clientWidth\",\"clientX\",\"clientY\",\"clip\",\"clip-path\",\"clip-rule\",\"clipBottom\",\"clipLeft\",\"clipPath\",\"clipPathUnits\",\"clipRight\",\"clipRule\",\"clipTop\",\"clipboardData\",\"clone\",\"cloneContents\",\"cloneNode\",\"cloneRange\",\"close\",\"closePath\",\"closed\",\"closest\",\"clz\",\"clz32\",\"cmp\",\"code\",\"codeBase\",\"codePointAt\",\"codeType\",\"colSpan\",\"collapse\",\"collapseToEnd\",\"collapseToStart\",\"collapsed\",\"collect\",\"colno\",\"color\",\"color-interpolation\",\"color-interpolation-filters\",\"colorDepth\",\"colorInterpolation\",\"colorInterpolationFilters\",\"colorMask\",\"colorType\",\"cols\",\"columnCount\",\"columnFill\",\"columnGap\",\"columnNumber\",\"columnRule\",\"columnRuleColor\",\"columnRuleStyle\",\"columnRuleWidth\",\"columnSpan\",\"columnWidth\",\"columns\",\"command\",\"commitPreferences\",\"commonAncestorContainer\",\"compact\",\"compareBoundaryPoints\",\"compareDocumentPosition\",\"compareEndPoints\",\"compareNode\",\"comparePoint\",\"compatMode\",\"compatible\",\"compile\",\"compileShader\",\"complete\",\"componentFromPoint\",\"compositionEndOffset\",\"compositionStartOffset\",\"compressedTexImage2D\",\"compressedTexSubImage2D\",\"concat\",\"conditionText\",\"coneInnerAngle\",\"coneOuterAngle\",\"coneOuterGain\",\"confirm\",\"confirmComposition\",\"confirmSiteSpecificTrackingException\",\"confirmWebWideTrackingException\",\"connect\",\"connectEnd\",\"connectStart\",\"connected\",\"connection\",\"connectionSpeed\",\"console\",\"consolidate\",\"constrictionActive\",\"constructor\",\"contactID\",\"contains\",\"containsNode\",\"content\",\"contentDocument\",\"contentEditable\",\"contentOverflow\",\"contentScriptType\",\"contentStyleType\",\"contentType\",\"contentWindow\",\"context\",\"contextMenu\",\"contextmenu\",\"continue\",\"continuous\",\"control\",\"controller\",\"controls\",\"convertToSpecifiedUnits\",\"cookie\",\"cookieEnabled\",\"coords\",\"copyFromChannel\",\"copyTexImage2D\",\"copyTexSubImage2D\",\"copyToChannel\",\"copyWithin\",\"correspondingElement\",\"correspondingUseElement\",\"cos\",\"cosh\",\"count\",\"counter-increment\",\"counter-reset\",\"counterIncrement\",\"counterReset\",\"cpuClass\",\"cpuSleepAllowed\",\"create\",\"createAnalyser\",\"createAnswer\",\"createAttribute\",\"createAttributeNS\",\"createBiquadFilter\",\"createBuffer\",\"createBufferSource\",\"createCDATASection\",\"createCSSStyleSheet\",\"createCaption\",\"createChannelMerger\",\"createChannelSplitter\",\"createComment\",\"createContextualFragment\",\"createControlRange\",\"createConvolver\",\"createDTMFSender\",\"createDataChannel\",\"createDelay\",\"createDelayNode\",\"createDocument\",\"createDocumentFragment\",\"createDocumentType\",\"createDynamicsCompressor\",\"createElement\",\"createElementNS\",\"createEntityReference\",\"createEvent\",\"createEventObject\",\"createExpression\",\"createFramebuffer\",\"createFunction\",\"createGain\",\"createGainNode\",\"createHTMLDocument\",\"createImageBitmap\",\"createImageData\",\"createIndex\",\"createJavaScriptNode\",\"createLinearGradient\",\"createMediaElementSource\",\"createMediaKeys\",\"createMediaStreamDestination\",\"createMediaStreamSource\",\"createMutableFile\",\"createNSResolver\",\"createNodeIterator\",\"createNotification\",\"createObjectStore\",\"createObjectURL\",\"createOffer\",\"createOscillator\",\"createPanner\",\"createPattern\",\"createPeriodicWave\",\"createPopup\",\"createProcessingInstruction\",\"createProgram\",\"createRadialGradient\",\"createRange\",\"createRangeCollection\",\"createRenderbuffer\",\"createSVGAngle\",\"createSVGLength\",\"createSVGMatrix\",\"createSVGNumber\",\"createSVGPathSegArcAbs\",\"createSVGPathSegArcRel\",\"createSVGPathSegClosePath\",\"createSVGPathSegCurvetoCubicAbs\",\"createSVGPathSegCurvetoCubicRel\",\"createSVGPathSegCurvetoCubicSmoothAbs\",\"createSVGPathSegCurvetoCubicSmoothRel\",\"createSVGPathSegCurvetoQuadraticAbs\",\"createSVGPathSegCurvetoQuadraticRel\",\"createSVGPathSegCurvetoQuadraticSmoothAbs\",\"createSVGPathSegCurvetoQuadraticSmoothRel\",\"createSVGPathSegLinetoAbs\",\"createSVGPathSegLinetoHorizontalAbs\",\"createSVGPathSegLinetoHorizontalRel\",\"createSVGPathSegLinetoRel\",\"createSVGPathSegLinetoVerticalAbs\",\"createSVGPathSegLinetoVerticalRel\",\"createSVGPathSegMovetoAbs\",\"createSVGPathSegMovetoRel\",\"createSVGPoint\",\"createSVGRect\",\"createSVGTransform\",\"createSVGTransformFromMatrix\",\"createScriptProcessor\",\"createSession\",\"createShader\",\"createShadowRoot\",\"createStereoPanner\",\"createStyleSheet\",\"createTBody\",\"createTFoot\",\"createTHead\",\"createTextNode\",\"createTextRange\",\"createTexture\",\"createTouch\",\"createTouchList\",\"createTreeWalker\",\"createWaveShaper\",\"creationTime\",\"crossOrigin\",\"crypto\",\"csi\",\"cssFloat\",\"cssRules\",\"cssText\",\"cssValueType\",\"ctrlKey\",\"ctrlLeft\",\"cues\",\"cullFace\",\"currentNode\",\"currentPage\",\"currentScale\",\"currentScript\",\"currentSrc\",\"currentState\",\"currentStyle\",\"currentTarget\",\"currentTime\",\"currentTranslate\",\"currentView\",\"cursor\",\"curve\",\"customError\",\"cx\",\"cy\",\"d\",\"data\",\"dataFld\",\"dataFormatAs\",\"dataPageSize\",\"dataSrc\",\"dataTransfer\",\"database\",\"dataset\",\"dateTime\",\"db\",\"debug\",\"debuggerEnabled\",\"declare\",\"decode\",\"decodeAudioData\",\"decodeURI\",\"decodeURIComponent\",\"decodingInfo\",\"decrypt\",\"default\",\"defaultCharset\",\"defaultChecked\",\"defaultMuted\",\"defaultPlaybackRate\",\"defaultPrevented\",\"defaultSelected\",\"defaultStatus\",\"defaultURL\",\"defaultValue\",\"defaultView\",\"defaultstatus\",\"defer\",\"defineMagicFunction\",\"defineMagicVariable\",\"defineProperties\",\"defineProperty\",\"delayTime\",\"delete\",\"deleteBuffer\",\"deleteCaption\",\"deleteCell\",\"deleteContents\",\"deleteData\",\"deleteDatabase\",\"deleteFramebuffer\",\"deleteFromDocument\",\"deleteIndex\",\"deleteMedium\",\"deleteObjectStore\",\"deleteProgram\",\"deleteRenderbuffer\",\"deleteRow\",\"deleteRule\",\"deleteShader\",\"deleteTFoot\",\"deleteTHead\",\"deleteTexture\",\"deliverChangeRecords\",\"delivery\",\"deliveryInfo\",\"deliveryStatus\",\"deliveryTimestamp\",\"delta\",\"deltaMode\",\"deltaX\",\"deltaY\",\"deltaZ\",\"depthFunc\",\"depthMask\",\"depthRange\",\"deriveBits\",\"deriveKey\",\"description\",\"deselectAll\",\"designMode\",\"destination\",\"destinationURL\",\"detach\",\"detachEvent\",\"detachShader\",\"detail\",\"detune\",\"devicePixelRatio\",\"deviceXDPI\",\"deviceYDPI\",\"diffuseConstant\",\"digest\",\"dimensions\",\"dir\",\"dirName\",\"direction\",\"dirxml\",\"disable\",\"disableVertexAttribArray\",\"disabled\",\"dischargingTime\",\"disconnect\",\"dispatchEvent\",\"display\",\"distanceModel\",\"divisor\",\"djsapi\",\"djsproxy\",\"doImport\",\"doNotTrack\",\"doScroll\",\"doctype\",\"document\",\"documentElement\",\"documentMode\",\"documentURI\",\"dolphin\",\"dolphinGameCenter\",\"dolphininfo\",\"dolphinmeta\",\"domComplete\",\"domContentLoadedEventEnd\",\"domContentLoadedEventStart\",\"domInteractive\",\"domLoading\",\"domain\",\"domainLookupEnd\",\"domainLookupStart\",\"dominant-baseline\",\"dominantBaseline\",\"done\",\"dopplerFactor\",\"download\",\"dragDrop\",\"draggable\",\"drawArrays\",\"drawArraysInstancedANGLE\",\"drawCustomFocusRing\",\"drawElements\",\"drawElementsInstancedANGLE\",\"drawFocusIfNeeded\",\"drawImage\",\"drawImageFromRect\",\"drawSystemFocusRing\",\"drawingBufferHeight\",\"drawingBufferWidth\",\"dropEffect\",\"droppedVideoFrames\",\"dropzone\",\"dump\",\"duplicate\",\"duration\",\"dvname\",\"dvnum\",\"dx\",\"dy\",\"dynsrc\",\"e\",\"edgeMode\",\"effectAllowed\",\"elapsedTime\",\"elementFromPoint\",\"elements\",\"elevation\",\"ellipse\",\"email\",\"embeds\",\"empty\",\"empty-cells\",\"emptyCells\",\"enable\",\"enableBackground\",\"enableStyleSheetsForSet\",\"enableVertexAttribArray\",\"enabled\",\"enabledPlugin\",\"encode\",\"encodeURI\",\"encodeURIComponent\",\"encoding\",\"encrypt\",\"enctype\",\"end\",\"endContainer\",\"endElement\",\"endElementAt\",\"endOfStream\",\"endOffset\",\"endTime\",\"ended\",\"endsWith\",\"entities\",\"entries\",\"entryType\",\"enumerate\",\"enumerateEditable\",\"error\",\"errorCode\",\"escape\",\"eval\",\"evaluate\",\"event\",\"eventPhase\",\"every\",\"exception\",\"exec\",\"execCommand\",\"execCommandShowHelp\",\"execScript\",\"exitFullscreen\",\"exitPointerLock\",\"exp\",\"expand\",\"expandEntityReferences\",\"expando\",\"expansion\",\"expiryDate\",\"explicitOriginalTarget\",\"expm1\",\"exponent\",\"exponentialRampToValueAtTime\",\"exportKey\",\"extend\",\"extensions\",\"extentNode\",\"extentOffset\",\"external\",\"externalResourcesRequired\",\"extractContents\",\"extractable\",\"f\",\"face\",\"factoryReset\",\"fallback\",\"familyName\",\"farthestViewportElement\",\"fastSeek\",\"fatal\",\"fetch\",\"fetchStart\",\"fftSize\",\"fgColor\",\"fileCreatedDate\",\"fileHandle\",\"fileModifiedDate\",\"fileName\",\"fileSize\",\"fileUpdatedDate\",\"filename\",\"files\",\"fill\",\"fill-opacity\",\"fill-rule\",\"fillOpacity\",\"fillRect\",\"fillRule\",\"fillStyle\",\"fillText\",\"filter\",\"filterResX\",\"filterResY\",\"filterUnits\",\"filters\",\"finally\",\"find\",\"findIndex\",\"findRule\",\"findText\",\"finish\",\"fireEvent\",\"firstChild\",\"firstElementChild\",\"firstPage\",\"fixed\",\"flex\",\"flex-basis\",\"flex-direction\",\"flex-flow\",\"flex-grow\",\"flex-shrink\",\"flex-wrap\",\"flexBasis\",\"flexDirection\",\"flexFlow\",\"flexGrow\",\"flexShrink\",\"flexWrap\",\"flipX\",\"flipY\",\"float\",\"flood-color\",\"flood-opacity\",\"floodColor\",\"floodOpacity\",\"floor\",\"flush\",\"focus\",\"focusNode\",\"focusOffset\",\"font\",\"font-family\",\"font-feature-settings\",\"font-kerning\",\"font-language-override\",\"font-size\",\"font-size-adjust\",\"font-stretch\",\"font-style\",\"font-synthesis\",\"font-variant\",\"font-variant-alternates\",\"font-variant-caps\",\"font-variant-east-asian\",\"font-variant-ligatures\",\"font-variant-numeric\",\"font-variant-position\",\"font-weight\",\"fontFamily\",\"fontFeatureSettings\",\"fontKerning\",\"fontLanguageOverride\",\"fontSize\",\"fontSizeAdjust\",\"fontSmoothingEnabled\",\"fontStretch\",\"fontStyle\",\"fontSynthesis\",\"fontVariant\",\"fontVariantAlternates\",\"fontVariantCaps\",\"fontVariantEastAsian\",\"fontVariantLigatures\",\"fontVariantNumeric\",\"fontVariantPosition\",\"fontWeight\",\"fontcolor\",\"fonts\",\"fontsize\",\"for\",\"forEach\",\"forceRedraw\",\"form\",\"formAction\",\"formEnctype\",\"formMethod\",\"formNoValidate\",\"formTarget\",\"format\",\"formatToParts\",\"forms\",\"forward\",\"fr\",\"frame\",\"frameBorder\",\"frameElement\",\"frameSpacing\",\"framebufferRenderbuffer\",\"framebufferTexture2D\",\"frames\",\"freeSpace\",\"freeze\",\"frequency\",\"frequencyBinCount\",\"from\",\"fromCharCode\",\"fromCodePoint\",\"fromElement\",\"frontFace\",\"fround\",\"fullScreen\",\"fullscreenElement\",\"fullscreenEnabled\",\"fx\",\"fy\",\"gain\",\"gamepad\",\"gamma\",\"genderIdentity\",\"generateKey\",\"generateMipmap\",\"generateRequest\",\"geolocation\",\"gestureObject\",\"get\",\"getActiveAttrib\",\"getActiveUniform\",\"getAdjacentText\",\"getAll\",\"getAllResponseHeaders\",\"getAsFile\",\"getAsString\",\"getAttachedShaders\",\"getAttribLocation\",\"getAttribute\",\"getAttributeNS\",\"getAttributeNode\",\"getAttributeNodeNS\",\"getAudioTracks\",\"getBBox\",\"getBattery\",\"getBlob\",\"getBookmark\",\"getBoundingClientRect\",\"getBufferParameter\",\"getByteFrequencyData\",\"getByteTimeDomainData\",\"getCSSCanvasContext\",\"getCTM\",\"getCandidateWindowClientRect\",\"getChannelData\",\"getCharNumAtPosition\",\"getClientRect\",\"getClientRects\",\"getCompositionAlternatives\",\"getComputedStyle\",\"getComputedTextLength\",\"getConfiguration\",\"getContext\",\"getContextAttributes\",\"getCounterValue\",\"getCueAsHTML\",\"getCueById\",\"getCurrentPosition\",\"getCurrentTime\",\"getData\",\"getDatabaseNames\",\"getDate\",\"getDay\",\"getDefaultComputedStyle\",\"getDestinationInsertionPoints\",\"getDistributedNodes\",\"getEditable\",\"getElementById\",\"getElementsByClassName\",\"getElementsByName\",\"getElementsByTagName\",\"getElementsByTagNameNS\",\"getEnclosureList\",\"getEndPositionOfChar\",\"getEntries\",\"getEntriesByName\",\"getEntriesByType\",\"getError\",\"getExtension\",\"getExtentOfChar\",\"getFeature\",\"getFile\",\"getFloat32\",\"getFloat64\",\"getFloatFrequencyData\",\"getFloatTimeDomainData\",\"getFloatValue\",\"getFramebufferAttachmentParameter\",\"getFrequencyResponse\",\"getFullYear\",\"getGamepads\",\"getHours\",\"getImageData\",\"getInt16\",\"getInt32\",\"getInt8\",\"getIntersectionList\",\"getItem\",\"getItems\",\"getKey\",\"getLineDash\",\"getLocalStreams\",\"getMarks\",\"getMatchedCSSRules\",\"getMeasures\",\"getMetadata\",\"getMilliseconds\",\"getMinutes\",\"getModifierState\",\"getMonth\",\"getNamedItem\",\"getNamedItemNS\",\"getNotifier\",\"getNumberOfChars\",\"getOverrideHistoryNavigationMode\",\"getOverrideStyle\",\"getOwnPropertyDescriptor\",\"getOwnPropertyNames\",\"getOwnPropertySymbols\",\"getParameter\",\"getPathSegAtLength\",\"getPointAtLength\",\"getPreference\",\"getPreferenceDefault\",\"getPresentationAttribute\",\"getPreventDefault\",\"getProgramInfoLog\",\"getProgramParameter\",\"getPropertyCSSValue\",\"getPropertyPriority\",\"getPropertyShorthand\",\"getPropertyValue\",\"getPrototypeOf\",\"getRGBColorValue\",\"getRandomValues\",\"getRangeAt\",\"getReceivers\",\"getRectValue\",\"getRegistration\",\"getRemoteStreams\",\"getRenderbufferParameter\",\"getResponseHeader\",\"getRoot\",\"getRotationOfChar\",\"getSVGDocument\",\"getScreenCTM\",\"getSeconds\",\"getSelection\",\"getSenders\",\"getShaderInfoLog\",\"getShaderParameter\",\"getShaderPrecisionFormat\",\"getShaderSource\",\"getSimpleDuration\",\"getSiteIcons\",\"getSources\",\"getSpeculativeParserUrls\",\"getStartPositionOfChar\",\"getStartTime\",\"getStats\",\"getStorageUpdates\",\"getStreamById\",\"getStringValue\",\"getSubStringLength\",\"getSubscription\",\"getSupportedExtensions\",\"getTexParameter\",\"getTime\",\"getTimezoneOffset\",\"getTotalLength\",\"getTrackById\",\"getTracks\",\"getTransformToElement\",\"getUTCDate\",\"getUTCDay\",\"getUTCFullYear\",\"getUTCHours\",\"getUTCMilliseconds\",\"getUTCMinutes\",\"getUTCMonth\",\"getUTCSeconds\",\"getUint16\",\"getUint32\",\"getUint8\",\"getUniform\",\"getUniformLocation\",\"getUserMedia\",\"getValues\",\"getVarDate\",\"getVariableValue\",\"getVertexAttrib\",\"getVertexAttribOffset\",\"getVideoPlaybackQuality\",\"getVideoTracks\",\"getWakeLockState\",\"getYear\",\"givenName\",\"global\",\"globalAlpha\",\"globalCompositeOperation\",\"glyphOrientationHorizontal\",\"glyphOrientationVertical\",\"glyphRef\",\"go\",\"gradientTransform\",\"gradientUnits\",\"grammars\",\"green\",\"group\",\"groupCollapsed\",\"groupEnd\",\"hardwareConcurrency\",\"has\",\"hasAttribute\",\"hasAttributeNS\",\"hasAttributes\",\"hasChildNodes\",\"hasComposition\",\"hasExtension\",\"hasFeature\",\"hasFocus\",\"hasLayout\",\"hasOwnProperty\",\"hash\",\"head\",\"headers\",\"heading\",\"height\",\"hidden\",\"hide\",\"hideFocus\",\"high\",\"hint\",\"history\",\"honorificPrefix\",\"honorificSuffix\",\"horizontalOverflow\",\"host\",\"hostname\",\"href\",\"hreflang\",\"hspace\",\"html5TagCheckInerface\",\"htmlFor\",\"htmlText\",\"httpEquiv\",\"hwTimestamp\",\"hypot\",\"iccId\",\"iceConnectionState\",\"iceGatheringState\",\"icon\",\"id\",\"identifier\",\"identity\",\"ignoreBOM\",\"ignoreCase\",\"image-orientation\",\"image-rendering\",\"imageOrientation\",\"imageRendering\",\"images\",\"ime-mode\",\"imeMode\",\"implementation\",\"importKey\",\"importNode\",\"importStylesheet\",\"imports\",\"impp\",\"imul\",\"in1\",\"in2\",\"inBandMetadataTrackDispatchType\",\"inRange\",\"includes\",\"incremental\",\"indeterminate\",\"index\",\"indexNames\",\"indexOf\",\"indexedDB\",\"inertiaDestinationX\",\"inertiaDestinationY\",\"info\",\"init\",\"initAnimationEvent\",\"initBeforeLoadEvent\",\"initClipboardEvent\",\"initCloseEvent\",\"initCommandEvent\",\"initCompositionEvent\",\"initCustomEvent\",\"initData\",\"initDeviceMotionEvent\",\"initDeviceOrientationEvent\",\"initDragEvent\",\"initErrorEvent\",\"initEvent\",\"initFocusEvent\",\"initGestureEvent\",\"initHashChangeEvent\",\"initKeyEvent\",\"initKeyboardEvent\",\"initMSManipulationEvent\",\"initMessageEvent\",\"initMouseEvent\",\"initMouseScrollEvent\",\"initMouseWheelEvent\",\"initMutationEvent\",\"initNSMouseEvent\",\"initOverflowEvent\",\"initPageEvent\",\"initPageTransitionEvent\",\"initPointerEvent\",\"initPopStateEvent\",\"initProgressEvent\",\"initScrollAreaEvent\",\"initSimpleGestureEvent\",\"initStorageEvent\",\"initTextEvent\",\"initTimeEvent\",\"initTouchEvent\",\"initTransitionEvent\",\"initUIEvent\",\"initWebKitAnimationEvent\",\"initWebKitTransitionEvent\",\"initWebKitWheelEvent\",\"initWheelEvent\",\"initialTime\",\"initialize\",\"initiatorType\",\"inner\",\"innerHTML\",\"innerHeight\",\"innerText\",\"innerWidth\",\"input\",\"inputBuffer\",\"inputEncoding\",\"inputMethod\",\"insertAdjacentElement\",\"insertAdjacentHTML\",\"insertAdjacentText\",\"insertBefore\",\"insertCell\",\"insertData\",\"insertItemBefore\",\"insertNode\",\"insertRow\",\"insertRule\",\"instanceRoot\",\"intercept\",\"interimResults\",\"internalSubset\",\"intersectsNode\",\"interval\",\"invalidIteratorState\",\"inverse\",\"invertSelf\",\"is\",\"is2D\",\"isAlternate\",\"isArray\",\"isBingCurrentSearchDefault\",\"isBuffer\",\"isCandidateWindowVisible\",\"isChar\",\"isCollapsed\",\"isComposing\",\"isContentEditable\",\"isContentHandlerRegistered\",\"isContextLost\",\"isDefaultNamespace\",\"isDisabled\",\"isEnabled\",\"isEqual\",\"isEqualNode\",\"isExtensible\",\"isFinite\",\"isFramebuffer\",\"isFrozen\",\"isGenerator\",\"isId\",\"isInjected\",\"isInteger\",\"isMap\",\"isMultiLine\",\"isNaN\",\"isOpen\",\"isPointInFill\",\"isPointInPath\",\"isPointInRange\",\"isPointInStroke\",\"isPrefAlternate\",\"isPrimary\",\"isProgram\",\"isPropertyImplicit\",\"isProtocolHandlerRegistered\",\"isPrototypeOf\",\"isRenderbuffer\",\"isSafeInteger\",\"isSameNode\",\"isSealed\",\"isShader\",\"isSupported\",\"isTextEdit\",\"isTexture\",\"isTrusted\",\"isTypeSupported\",\"isView\",\"isolation\",\"italics\",\"item\",\"itemId\",\"itemProp\",\"itemRef\",\"itemScope\",\"itemType\",\"itemValue\",\"iterateNext\",\"iterator\",\"javaEnabled\",\"jobTitle\",\"join\",\"json\",\"justify-content\",\"justifyContent\",\"k1\",\"k2\",\"k3\",\"k4\",\"kernelMatrix\",\"kernelUnitLengthX\",\"kernelUnitLengthY\",\"kerning\",\"key\",\"keyCode\",\"keyFor\",\"keyIdentifier\",\"keyLightEnabled\",\"keyLocation\",\"keyPath\",\"keySystem\",\"keyText\",\"keyUsage\",\"keys\",\"keytype\",\"kind\",\"knee\",\"label\",\"labels\",\"lang\",\"language\",\"languages\",\"largeArcFlag\",\"lastChild\",\"lastElementChild\",\"lastEventId\",\"lastIndex\",\"lastIndexOf\",\"lastMatch\",\"lastMessageSubject\",\"lastMessageType\",\"lastModified\",\"lastModifiedDate\",\"lastPage\",\"lastParen\",\"lastState\",\"lastStyleSheetSet\",\"latitude\",\"layerX\",\"layerY\",\"layoutFlow\",\"layoutGrid\",\"layoutGridChar\",\"layoutGridLine\",\"layoutGridMode\",\"layoutGridType\",\"lbound\",\"left\",\"leftContext\",\"leftMargin\",\"length\",\"lengthAdjust\",\"lengthComputable\",\"letter-spacing\",\"letterSpacing\",\"level\",\"lighting-color\",\"lightingColor\",\"limitingConeAngle\",\"line\",\"line-height\",\"lineAlign\",\"lineBreak\",\"lineCap\",\"lineDashOffset\",\"lineHeight\",\"lineJoin\",\"lineNumber\",\"lineTo\",\"lineWidth\",\"linearRampToValueAtTime\",\"lineno\",\"link\",\"linkColor\",\"linkProgram\",\"links\",\"list\",\"list-style\",\"list-style-image\",\"list-style-position\",\"list-style-type\",\"listStyle\",\"listStyleImage\",\"listStylePosition\",\"listStyleType\",\"listener\",\"load\",\"loadEventEnd\",\"loadEventStart\",\"loadTimes\",\"loaded\",\"localDescription\",\"localName\",\"localStorage\",\"locale\",\"localeCompare\",\"location\",\"locationbar\",\"lock\",\"lockedFile\",\"log\",\"log10\",\"log1p\",\"log2\",\"logicalXDPI\",\"logicalYDPI\",\"longDesc\",\"longitude\",\"lookupNamespaceURI\",\"lookupPrefix\",\"loop\",\"loopEnd\",\"loopStart\",\"looping\",\"low\",\"lower\",\"lowerBound\",\"lowerOpen\",\"lowsrc\",\"m11\",\"m12\",\"m13\",\"m14\",\"m21\",\"m22\",\"m23\",\"m24\",\"m31\",\"m32\",\"m33\",\"m34\",\"m41\",\"m42\",\"m43\",\"m44\",\"manifest\",\"map\",\"mapping\",\"margin\",\"margin-bottom\",\"margin-left\",\"margin-right\",\"margin-top\",\"marginBottom\",\"marginHeight\",\"marginLeft\",\"marginRight\",\"marginTop\",\"marginWidth\",\"mark\",\"marker\",\"marker-end\",\"marker-mid\",\"marker-offset\",\"marker-start\",\"markerEnd\",\"markerHeight\",\"markerMid\",\"markerOffset\",\"markerStart\",\"markerUnits\",\"markerWidth\",\"marks\",\"mask\",\"mask-type\",\"maskContentUnits\",\"maskType\",\"maskUnits\",\"match\",\"matchMedia\",\"matchMedium\",\"matches\",\"matrix\",\"matrixTransform\",\"max\",\"max-height\",\"max-width\",\"maxAlternatives\",\"maxChannelCount\",\"maxConnectionsPerServer\",\"maxDecibels\",\"maxDistance\",\"maxHeight\",\"maxLength\",\"maxTouchPoints\",\"maxValue\",\"maxWidth\",\"measure\",\"measureText\",\"media\",\"mediaCapabilities\",\"mediaDevices\",\"mediaElement\",\"mediaGroup\",\"mediaKeys\",\"mediaText\",\"meetOrSlice\",\"memory\",\"menubar\",\"mergeAttributes\",\"message\",\"messageClass\",\"messageHandlers\",\"metaKey\",\"method\",\"mimeType\",\"mimeTypes\",\"min\",\"min-height\",\"min-width\",\"minDecibels\",\"minHeight\",\"minValue\",\"minWidth\",\"miterLimit\",\"mix-blend-mode\",\"mixBlendMode\",\"mode\",\"modify\",\"mount\",\"move\",\"moveBy\",\"moveEnd\",\"moveFirst\",\"moveFocusDown\",\"moveFocusLeft\",\"moveFocusRight\",\"moveFocusUp\",\"moveNext\",\"moveRow\",\"moveStart\",\"moveTo\",\"moveToBookmark\",\"moveToElementText\",\"moveToPoint\",\"mozAdd\",\"mozAnimationStartTime\",\"mozAnon\",\"mozApps\",\"mozAudioCaptured\",\"mozAudioChannelType\",\"mozAutoplayEnabled\",\"mozCancelAnimationFrame\",\"mozCancelFullScreen\",\"mozCancelRequestAnimationFrame\",\"mozCaptureStream\",\"mozCaptureStreamUntilEnded\",\"mozClearDataAt\",\"mozContact\",\"mozContacts\",\"mozCreateFileHandle\",\"mozCurrentTransform\",\"mozCurrentTransformInverse\",\"mozCursor\",\"mozDash\",\"mozDashOffset\",\"mozDecodedFrames\",\"mozExitPointerLock\",\"mozFillRule\",\"mozFragmentEnd\",\"mozFrameDelay\",\"mozFullScreen\",\"mozFullScreenElement\",\"mozFullScreenEnabled\",\"mozGetAll\",\"mozGetAllKeys\",\"mozGetAsFile\",\"mozGetDataAt\",\"mozGetMetadata\",\"mozGetUserMedia\",\"mozHasAudio\",\"mozHasItem\",\"mozHidden\",\"mozImageSmoothingEnabled\",\"mozIndexedDB\",\"mozInnerScreenX\",\"mozInnerScreenY\",\"mozInputSource\",\"mozIsTextField\",\"mozItem\",\"mozItemCount\",\"mozItems\",\"mozLength\",\"mozLockOrientation\",\"mozMatchesSelector\",\"mozMovementX\",\"mozMovementY\",\"mozOpaque\",\"mozOrientation\",\"mozPaintCount\",\"mozPaintedFrames\",\"mozParsedFrames\",\"mozPay\",\"mozPointerLockElement\",\"mozPresentedFrames\",\"mozPreservesPitch\",\"mozPressure\",\"mozPrintCallback\",\"mozRTCIceCandidate\",\"mozRTCPeerConnection\",\"mozRTCSessionDescription\",\"mozRemove\",\"mozRequestAnimationFrame\",\"mozRequestFullScreen\",\"mozRequestPointerLock\",\"mozSetDataAt\",\"mozSetImageElement\",\"mozSourceNode\",\"mozSrcObject\",\"mozSystem\",\"mozTCPSocket\",\"mozTextStyle\",\"mozTypesAt\",\"mozUnlockOrientation\",\"mozUserCancelled\",\"mozVisibilityState\",\"msAnimation\",\"msAnimationDelay\",\"msAnimationDirection\",\"msAnimationDuration\",\"msAnimationFillMode\",\"msAnimationIterationCount\",\"msAnimationName\",\"msAnimationPlayState\",\"msAnimationStartTime\",\"msAnimationTimingFunction\",\"msBackfaceVisibility\",\"msBlockProgression\",\"msCSSOMElementFloatMetrics\",\"msCaching\",\"msCachingEnabled\",\"msCancelRequestAnimationFrame\",\"msCapsLockWarningOff\",\"msClearImmediate\",\"msClose\",\"msContentZoomChaining\",\"msContentZoomFactor\",\"msContentZoomLimit\",\"msContentZoomLimitMax\",\"msContentZoomLimitMin\",\"msContentZoomSnap\",\"msContentZoomSnapPoints\",\"msContentZoomSnapType\",\"msContentZooming\",\"msConvertURL\",\"msCrypto\",\"msDoNotTrack\",\"msElementsFromPoint\",\"msElementsFromRect\",\"msExitFullscreen\",\"msExtendedCode\",\"msFillRule\",\"msFirstPaint\",\"msFlex\",\"msFlexAlign\",\"msFlexDirection\",\"msFlexFlow\",\"msFlexItemAlign\",\"msFlexLinePack\",\"msFlexNegative\",\"msFlexOrder\",\"msFlexPack\",\"msFlexPositive\",\"msFlexPreferredSize\",\"msFlexWrap\",\"msFlowFrom\",\"msFlowInto\",\"msFontFeatureSettings\",\"msFullscreenElement\",\"msFullscreenEnabled\",\"msGetInputContext\",\"msGetRegionContent\",\"msGetUntransformedBounds\",\"msGraphicsTrustStatus\",\"msGridColumn\",\"msGridColumnAlign\",\"msGridColumnSpan\",\"msGridColumns\",\"msGridRow\",\"msGridRowAlign\",\"msGridRowSpan\",\"msGridRows\",\"msHidden\",\"msHighContrastAdjust\",\"msHyphenateLimitChars\",\"msHyphenateLimitLines\",\"msHyphenateLimitZone\",\"msHyphens\",\"msImageSmoothingEnabled\",\"msImeAlign\",\"msIndexedDB\",\"msInterpolationMode\",\"msIsStaticHTML\",\"msKeySystem\",\"msKeys\",\"msLaunchUri\",\"msLockOrientation\",\"msManipulationViewsEnabled\",\"msMatchMedia\",\"msMatchesSelector\",\"msMaxTouchPoints\",\"msOrientation\",\"msOverflowStyle\",\"msPerspective\",\"msPerspectiveOrigin\",\"msPlayToDisabled\",\"msPlayToPreferredSourceUri\",\"msPlayToPrimary\",\"msPointerEnabled\",\"msRegionOverflow\",\"msReleasePointerCapture\",\"msRequestAnimationFrame\",\"msRequestFullscreen\",\"msSaveBlob\",\"msSaveOrOpenBlob\",\"msScrollChaining\",\"msScrollLimit\",\"msScrollLimitXMax\",\"msScrollLimitXMin\",\"msScrollLimitYMax\",\"msScrollLimitYMin\",\"msScrollRails\",\"msScrollSnapPointsX\",\"msScrollSnapPointsY\",\"msScrollSnapType\",\"msScrollSnapX\",\"msScrollSnapY\",\"msScrollTranslation\",\"msSetImmediate\",\"msSetMediaKeys\",\"msSetPointerCapture\",\"msTextCombineHorizontal\",\"msTextSizeAdjust\",\"msToBlob\",\"msTouchAction\",\"msTouchSelect\",\"msTraceAsyncCallbackCompleted\",\"msTraceAsyncCallbackStarting\",\"msTraceAsyncOperationCompleted\",\"msTraceAsyncOperationStarting\",\"msTransform\",\"msTransformOrigin\",\"msTransformStyle\",\"msTransition\",\"msTransitionDelay\",\"msTransitionDuration\",\"msTransitionProperty\",\"msTransitionTimingFunction\",\"msUnlockOrientation\",\"msUpdateAsyncCallbackRelation\",\"msUserSelect\",\"msVisibilityState\",\"msWrapFlow\",\"msWrapMargin\",\"msWrapThrough\",\"msWriteProfilerMark\",\"msZoom\",\"msZoomTo\",\"mt\",\"multiEntry\",\"multiSelectionObj\",\"multiline\",\"multiple\",\"multiply\",\"multiplySelf\",\"mutableFile\",\"muted\",\"n\",\"name\",\"nameProp\",\"namedItem\",\"namedRecordset\",\"names\",\"namespaceURI\",\"namespaces\",\"naturalHeight\",\"naturalWidth\",\"navigate\",\"navigation\",\"navigationMode\",\"navigationStart\",\"navigator\",\"near\",\"nearestViewportElement\",\"negative\",\"netscape\",\"networkState\",\"newScale\",\"newTranslate\",\"newURL\",\"newValue\",\"newValueSpecifiedUnits\",\"newVersion\",\"newhome\",\"next\",\"nextElementSibling\",\"nextNode\",\"nextPage\",\"nextSibling\",\"nickname\",\"noHref\",\"noResize\",\"noShade\",\"noValidate\",\"noWrap\",\"nodeName\",\"nodeType\",\"nodeValue\",\"normalize\",\"normalizedPathSegList\",\"notationName\",\"notations\",\"note\",\"noteGrainOn\",\"noteOff\",\"noteOn\",\"now\",\"numOctaves\",\"number\",\"numberOfChannels\",\"numberOfInputs\",\"numberOfItems\",\"numberOfOutputs\",\"numberValue\",\"oMatchesSelector\",\"object\",\"object-fit\",\"object-position\",\"objectFit\",\"objectPosition\",\"objectStore\",\"objectStoreNames\",\"observe\",\"of\",\"offscreenBuffering\",\"offset\",\"offsetHeight\",\"offsetLeft\",\"offsetNode\",\"offsetParent\",\"offsetTop\",\"offsetWidth\",\"offsetX\",\"offsetY\",\"ok\",\"oldURL\",\"oldValue\",\"oldVersion\",\"olderShadowRoot\",\"onLine\",\"onabort\",\"onactivate\",\"onactive\",\"onaddstream\",\"onaddtrack\",\"onafterprint\",\"onafterscriptexecute\",\"onafterupdate\",\"onaudioend\",\"onaudioprocess\",\"onaudiostart\",\"onautocomplete\",\"onautocompleteerror\",\"onbeforeactivate\",\"onbeforecopy\",\"onbeforecut\",\"onbeforedeactivate\",\"onbeforeeditfocus\",\"onbeforepaste\",\"onbeforeprint\",\"onbeforescriptexecute\",\"onbeforeunload\",\"onbeforeupdate\",\"onblocked\",\"onblur\",\"onbounce\",\"onboundary\",\"oncached\",\"oncancel\",\"oncandidatewindowhide\",\"oncandidatewindowshow\",\"oncandidatewindowupdate\",\"oncanplay\",\"oncanplaythrough\",\"once\",\"oncellchange\",\"onchange\",\"onchargingchange\",\"onchargingtimechange\",\"onchecking\",\"onclick\",\"onclose\",\"oncompassneedscalibration\",\"oncomplete\",\"oncontextmenu\",\"oncontrolselect\",\"oncopy\",\"oncuechange\",\"oncut\",\"ondataavailable\",\"ondatachannel\",\"ondatasetchanged\",\"ondatasetcomplete\",\"ondblclick\",\"ondeactivate\",\"ondevicelight\",\"ondevicemotion\",\"ondeviceorientation\",\"ondeviceproximity\",\"ondischargingtimechange\",\"ondisplay\",\"ondownloading\",\"ondrag\",\"ondragend\",\"ondragenter\",\"ondragleave\",\"ondragover\",\"ondragstart\",\"ondrop\",\"ondurationchange\",\"onemptied\",\"onencrypted\",\"onend\",\"onended\",\"onenter\",\"onerror\",\"onerrorupdate\",\"onexit\",\"onfilterchange\",\"onfinish\",\"onfocus\",\"onfocusin\",\"onfocusout\",\"onfullscreenchange\",\"onfullscreenerror\",\"ongesturechange\",\"ongestureend\",\"ongesturestart\",\"ongotpointercapture\",\"onhashchange\",\"onhelp\",\"onicecandidate\",\"oniceconnectionstatechange\",\"oninactive\",\"oninput\",\"oninvalid\",\"onkeydown\",\"onkeypress\",\"onkeyup\",\"onlanguagechange\",\"onlayoutcomplete\",\"onlevelchange\",\"onload\",\"onloadeddata\",\"onloadedmetadata\",\"onloadend\",\"onloadstart\",\"onlosecapture\",\"onlostpointercapture\",\"only\",\"onmark\",\"onmessage\",\"onmousedown\",\"onmouseenter\",\"onmouseleave\",\"onmousemove\",\"onmouseout\",\"onmouseover\",\"onmouseup\",\"onmousewheel\",\"onmove\",\"onmoveend\",\"onmovestart\",\"onmozfullscreenchange\",\"onmozfullscreenerror\",\"onmozorientationchange\",\"onmozpointerlockchange\",\"onmozpointerlockerror\",\"onmscontentzoom\",\"onmsfullscreenchange\",\"onmsfullscreenerror\",\"onmsgesturechange\",\"onmsgesturedoubletap\",\"onmsgestureend\",\"onmsgesturehold\",\"onmsgesturestart\",\"onmsgesturetap\",\"onmsgotpointercapture\",\"onmsinertiastart\",\"onmslostpointercapture\",\"onmsmanipulationstatechanged\",\"onmsneedkey\",\"onmsorientationchange\",\"onmspointercancel\",\"onmspointerdown\",\"onmspointerenter\",\"onmspointerhover\",\"onmspointerleave\",\"onmspointermove\",\"onmspointerout\",\"onmspointerover\",\"onmspointerup\",\"onmssitemodejumplistitemremoved\",\"onmsthumbnailclick\",\"onnegotiationneeded\",\"onnomatch\",\"onnoupdate\",\"onobsolete\",\"onoffline\",\"ononline\",\"onopen\",\"onorientationchange\",\"onpagechange\",\"onpagehide\",\"onpageshow\",\"onpaste\",\"onpause\",\"onplay\",\"onplaying\",\"onpluginstreamstart\",\"onpointercancel\",\"onpointerdown\",\"onpointerenter\",\"onpointerleave\",\"onpointerlockchange\",\"onpointerlockerror\",\"onpointermove\",\"onpointerout\",\"onpointerover\",\"onpointerup\",\"onpopstate\",\"onprogress\",\"onpropertychange\",\"onratechange\",\"onreadystatechange\",\"onremovestream\",\"onremovetrack\",\"onreset\",\"onresize\",\"onresizeend\",\"onresizestart\",\"onresourcetimingbufferfull\",\"onresult\",\"onresume\",\"onrowenter\",\"onrowexit\",\"onrowsdelete\",\"onrowsinserted\",\"onscroll\",\"onsearch\",\"onseeked\",\"onseeking\",\"onselect\",\"onselectionchange\",\"onselectstart\",\"onshow\",\"onsignalingstatechange\",\"onsoundend\",\"onsoundstart\",\"onspeechend\",\"onspeechstart\",\"onstalled\",\"onstart\",\"onstatechange\",\"onstop\",\"onstorage\",\"onstoragecommit\",\"onsubmit\",\"onsuccess\",\"onsuspend\",\"ontextinput\",\"ontimeout\",\"ontimeupdate\",\"ontoggle\",\"ontouchcancel\",\"ontouchend\",\"ontouchmove\",\"ontouchstart\",\"ontransitionend\",\"onunload\",\"onupdateready\",\"onupgradeneeded\",\"onuserproximity\",\"onversionchange\",\"onvoiceschanged\",\"onvolumechange\",\"onwaiting\",\"onwarning\",\"onwebkitanimationend\",\"onwebkitanimationiteration\",\"onwebkitanimationstart\",\"onwebkitcurrentplaybacktargetiswirelesschanged\",\"onwebkitfullscreenchange\",\"onwebkitfullscreenerror\",\"onwebkitkeyadded\",\"onwebkitkeyerror\",\"onwebkitkeymessage\",\"onwebkitneedkey\",\"onwebkitorientationchange\",\"onwebkitplaybacktargetavailabilitychanged\",\"onwebkitpointerlockchange\",\"onwebkitpointerlockerror\",\"onwebkitresourcetimingbufferfull\",\"onwebkittransitionend\",\"onwheel\",\"onzoom\",\"opacity\",\"open\",\"openCursor\",\"openDatabase\",\"openKeyCursor\",\"opener\",\"opera\",\"operationType\",\"operator\",\"opr\",\"optimum\",\"options\",\"order\",\"orderX\",\"orderY\",\"ordered\",\"org\",\"orient\",\"orientAngle\",\"orientType\",\"orientation\",\"origin\",\"originalTarget\",\"orphans\",\"oscpu\",\"outerHTML\",\"outerHeight\",\"outerText\",\"outerWidth\",\"outline\",\"outline-color\",\"outline-offset\",\"outline-style\",\"outline-width\",\"outlineColor\",\"outlineOffset\",\"outlineStyle\",\"outlineWidth\",\"outputBuffer\",\"overflow\",\"overflow-x\",\"overflow-y\",\"overflowX\",\"overflowY\",\"overrideMimeType\",\"oversample\",\"ownerDocument\",\"ownerElement\",\"ownerNode\",\"ownerRule\",\"ownerSVGElement\",\"owningElement\",\"p1\",\"p2\",\"p3\",\"p4\",\"pad\",\"padding\",\"padding-bottom\",\"padding-left\",\"padding-right\",\"padding-top\",\"paddingBottom\",\"paddingLeft\",\"paddingRight\",\"paddingTop\",\"page\",\"page-break-after\",\"page-break-before\",\"page-break-inside\",\"pageBreakAfter\",\"pageBreakBefore\",\"pageBreakInside\",\"pageCount\",\"pageX\",\"pageXOffset\",\"pageY\",\"pageYOffset\",\"pages\",\"paint-order\",\"paintOrder\",\"paintRequests\",\"paintType\",\"palette\",\"panningModel\",\"parent\",\"parentElement\",\"parentNode\",\"parentRule\",\"parentStyleSheet\",\"parentTextEdit\",\"parentWindow\",\"parse\",\"parseFloat\",\"parseFromString\",\"parseInt\",\"participants\",\"passive\",\"password\",\"pasteHTML\",\"path\",\"pathLength\",\"pathSegList\",\"pathSegType\",\"pathSegTypeAsLetter\",\"pathname\",\"pattern\",\"patternContentUnits\",\"patternMismatch\",\"patternTransform\",\"patternUnits\",\"pause\",\"pauseAnimations\",\"pauseOnExit\",\"paused\",\"pending\",\"performance\",\"permission\",\"persisted\",\"personalbar\",\"perspective\",\"perspective-origin\",\"perspectiveOrigin\",\"phoneticFamilyName\",\"phoneticGivenName\",\"photo\",\"ping\",\"pitch\",\"pixelBottom\",\"pixelDepth\",\"pixelHeight\",\"pixelLeft\",\"pixelRight\",\"pixelStorei\",\"pixelTop\",\"pixelUnitToMillimeterX\",\"pixelUnitToMillimeterY\",\"pixelWidth\",\"placeholder\",\"platform\",\"play\",\"playbackRate\",\"playbackState\",\"playbackTime\",\"played\",\"plugins\",\"pluginspage\",\"pname\",\"pointer-events\",\"pointerBeforeReferenceNode\",\"pointerEnabled\",\"pointerEvents\",\"pointerId\",\"pointerLockElement\",\"pointerType\",\"points\",\"pointsAtX\",\"pointsAtY\",\"pointsAtZ\",\"polygonOffset\",\"pop\",\"popupWindowFeatures\",\"popupWindowName\",\"popupWindowURI\",\"port\",\"port1\",\"port2\",\"ports\",\"posBottom\",\"posHeight\",\"posLeft\",\"posRight\",\"posTop\",\"posWidth\",\"position\",\"positionAlign\",\"postError\",\"postMessage\",\"poster\",\"pow\",\"powerOff\",\"preMultiplySelf\",\"precision\",\"preferredStyleSheetSet\",\"preferredStylesheetSet\",\"prefix\",\"preload\",\"prepend\",\"preserveAlpha\",\"preserveAspectRatio\",\"preserveAspectRatioString\",\"pressed\",\"pressure\",\"prevValue\",\"preventDefault\",\"preventExtensions\",\"previousElementSibling\",\"previousNode\",\"previousPage\",\"previousScale\",\"previousSibling\",\"previousTranslate\",\"primaryKey\",\"primitiveType\",\"primitiveUnits\",\"principals\",\"print\",\"privateKey\",\"probablySupportsContext\",\"process\",\"processIceMessage\",\"product\",\"productSub\",\"profile\",\"profileEnd\",\"profiles\",\"prompt\",\"properties\",\"propertyIsEnumerable\",\"propertyName\",\"protocol\",\"protocolLong\",\"prototype\",\"pseudoClass\",\"pseudoElement\",\"publicId\",\"publicKey\",\"published\",\"push\",\"pushNotification\",\"pushState\",\"put\",\"putImageData\",\"quadraticCurveTo\",\"qualifier\",\"queryCommandEnabled\",\"queryCommandIndeterm\",\"queryCommandState\",\"queryCommandSupported\",\"queryCommandText\",\"queryCommandValue\",\"querySelector\",\"querySelectorAll\",\"quote\",\"quotes\",\"r\",\"r1\",\"r2\",\"race\",\"radiogroup\",\"radiusX\",\"radiusY\",\"random\",\"range\",\"rangeCount\",\"rangeMax\",\"rangeMin\",\"rangeOffset\",\"rangeOverflow\",\"rangeParent\",\"rangeUnderflow\",\"rate\",\"ratio\",\"raw\",\"read\",\"readAsArrayBuffer\",\"readAsBinaryString\",\"readAsBlob\",\"readAsDataURL\",\"readAsText\",\"readOnly\",\"readPixels\",\"readReportRequested\",\"readyState\",\"reason\",\"reboot\",\"receiver\",\"receivers\",\"recordNumber\",\"recordset\",\"rect\",\"red\",\"redirectCount\",\"redirectEnd\",\"redirectStart\",\"reduce\",\"reduceRight\",\"reduction\",\"refDistance\",\"refX\",\"refY\",\"referenceNode\",\"referrer\",\"refresh\",\"region\",\"regionAnchorX\",\"regionAnchorY\",\"regionId\",\"regions\",\"register\",\"registerContentHandler\",\"registerElement\",\"registerProtocolHandler\",\"reject\",\"rel\",\"relList\",\"relatedNode\",\"relatedTarget\",\"release\",\"releaseCapture\",\"releaseEvents\",\"releasePointerCapture\",\"releaseShaderCompiler\",\"reliable\",\"reload\",\"remainingSpace\",\"remoteDescription\",\"remove\",\"removeAllRanges\",\"removeAttribute\",\"removeAttributeNS\",\"removeAttributeNode\",\"removeBehavior\",\"removeChild\",\"removeCue\",\"removeEventListener\",\"removeFilter\",\"removeImport\",\"removeItem\",\"removeListener\",\"removeNamedItem\",\"removeNamedItemNS\",\"removeNode\",\"removeParameter\",\"removeProperty\",\"removeRange\",\"removeRegion\",\"removeRule\",\"removeSiteSpecificTrackingException\",\"removeSourceBuffer\",\"removeStream\",\"removeTrack\",\"removeVariable\",\"removeWakeLockListener\",\"removeWebWideTrackingException\",\"removedNodes\",\"renderbufferStorage\",\"renderedBuffer\",\"renderingMode\",\"repeat\",\"replace\",\"replaceAdjacentText\",\"replaceChild\",\"replaceData\",\"replaceId\",\"replaceItem\",\"replaceNode\",\"replaceState\",\"replaceTrack\",\"replaceWholeText\",\"reportValidity\",\"requestAnimationFrame\",\"requestAutocomplete\",\"requestData\",\"requestFullscreen\",\"requestMediaKeySystemAccess\",\"requestPermission\",\"requestPointerLock\",\"requestStart\",\"requestingWindow\",\"required\",\"requiredExtensions\",\"requiredFeatures\",\"reset\",\"resetTransform\",\"resize\",\"resizeBy\",\"resizeTo\",\"resolve\",\"response\",\"responseBody\",\"responseEnd\",\"responseStart\",\"responseText\",\"responseType\",\"responseURL\",\"responseXML\",\"restore\",\"result\",\"resultType\",\"resume\",\"returnValue\",\"rev\",\"reverse\",\"reversed\",\"revocable\",\"revokeObjectURL\",\"rgbColor\",\"right\",\"rightContext\",\"rightMargin\",\"rolloffFactor\",\"root\",\"rootElement\",\"rotate\",\"rotateAxisAngle\",\"rotateAxisAngleSelf\",\"rotateFromVector\",\"rotateFromVectorSelf\",\"rotateSelf\",\"rotation\",\"rotationRate\",\"round\",\"rowIndex\",\"rowSpan\",\"rows\",\"rubyAlign\",\"rubyOverhang\",\"rubyPosition\",\"rules\",\"runtime\",\"runtimeStyle\",\"rx\",\"ry\",\"safari\",\"sampleCoverage\",\"sampleRate\",\"sandbox\",\"save\",\"scale\",\"scale3d\",\"scale3dSelf\",\"scaleNonUniform\",\"scaleNonUniformSelf\",\"scaleSelf\",\"scheme\",\"scissor\",\"scope\",\"scopeName\",\"scoped\",\"screen\",\"screenBrightness\",\"screenEnabled\",\"screenLeft\",\"screenPixelToMillimeterX\",\"screenPixelToMillimeterY\",\"screenTop\",\"screenX\",\"screenY\",\"scripts\",\"scroll\",\"scroll-behavior\",\"scrollAmount\",\"scrollBehavior\",\"scrollBy\",\"scrollByLines\",\"scrollByPages\",\"scrollDelay\",\"scrollHeight\",\"scrollIntoView\",\"scrollIntoViewIfNeeded\",\"scrollLeft\",\"scrollLeftMax\",\"scrollMaxX\",\"scrollMaxY\",\"scrollTo\",\"scrollTop\",\"scrollTopMax\",\"scrollWidth\",\"scrollX\",\"scrollY\",\"scrollbar3dLightColor\",\"scrollbarArrowColor\",\"scrollbarBaseColor\",\"scrollbarDarkShadowColor\",\"scrollbarFaceColor\",\"scrollbarHighlightColor\",\"scrollbarShadowColor\",\"scrollbarTrackColor\",\"scrollbars\",\"scrolling\",\"sdp\",\"sdpMLineIndex\",\"sdpMid\",\"seal\",\"search\",\"searchBox\",\"searchBoxJavaBridge_\",\"searchParams\",\"sectionRowIndex\",\"secureConnectionStart\",\"security\",\"seed\",\"seekable\",\"seeking\",\"select\",\"selectAllChildren\",\"selectNode\",\"selectNodeContents\",\"selectNodes\",\"selectSingleNode\",\"selectSubString\",\"selected\",\"selectedIndex\",\"selectedOptions\",\"selectedStyleSheetSet\",\"selectedStylesheetSet\",\"selection\",\"selectionDirection\",\"selectionEnd\",\"selectionStart\",\"selector\",\"selectorText\",\"self\",\"send\",\"sendAsBinary\",\"sendBeacon\",\"sender\",\"sentTimestamp\",\"separator\",\"serializeToString\",\"serviceWorker\",\"sessionId\",\"sessionStorage\",\"set\",\"setActive\",\"setAlpha\",\"setAttribute\",\"setAttributeNS\",\"setAttributeNode\",\"setAttributeNodeNS\",\"setBaseAndExtent\",\"setBingCurrentSearchDefault\",\"setCapture\",\"setColor\",\"setCompositeOperation\",\"setCurrentTime\",\"setCustomValidity\",\"setData\",\"setDate\",\"setDragImage\",\"setEnd\",\"setEndAfter\",\"setEndBefore\",\"setEndPoint\",\"setFillColor\",\"setFilterRes\",\"setFloat32\",\"setFloat64\",\"setFloatValue\",\"setFullYear\",\"setHours\",\"setImmediate\",\"setInt16\",\"setInt32\",\"setInt8\",\"setInterval\",\"setItem\",\"setLineCap\",\"setLineDash\",\"setLineJoin\",\"setLineWidth\",\"setLocalDescription\",\"setMatrix\",\"setMatrixValue\",\"setMediaKeys\",\"setMilliseconds\",\"setMinutes\",\"setMiterLimit\",\"setMonth\",\"setNamedItem\",\"setNamedItemNS\",\"setNonUserCodeExceptions\",\"setOrientToAngle\",\"setOrientToAuto\",\"setOrientation\",\"setOverrideHistoryNavigationMode\",\"setPaint\",\"setParameter\",\"setPeriodicWave\",\"setPointerCapture\",\"setPosition\",\"setPreference\",\"setProperty\",\"setPrototypeOf\",\"setRGBColor\",\"setRGBColorICCColor\",\"setRadius\",\"setRangeText\",\"setRemoteDescription\",\"setRequestHeader\",\"setResizable\",\"setResourceTimingBufferSize\",\"setRotate\",\"setScale\",\"setSeconds\",\"setSelectionRange\",\"setServerCertificate\",\"setShadow\",\"setSkewX\",\"setSkewY\",\"setStart\",\"setStartAfter\",\"setStartBefore\",\"setStdDeviation\",\"setStringValue\",\"setStrokeColor\",\"setSuggestResult\",\"setTargetAtTime\",\"setTargetValueAtTime\",\"setTime\",\"setTimeout\",\"setTransform\",\"setTranslate\",\"setUTCDate\",\"setUTCFullYear\",\"setUTCHours\",\"setUTCMilliseconds\",\"setUTCMinutes\",\"setUTCMonth\",\"setUTCSeconds\",\"setUint16\",\"setUint32\",\"setUint8\",\"setUri\",\"setValueAtTime\",\"setValueCurveAtTime\",\"setVariable\",\"setVelocity\",\"setVersion\",\"setYear\",\"settingName\",\"settingValue\",\"sex\",\"shaderSource\",\"shadowBlur\",\"shadowColor\",\"shadowOffsetX\",\"shadowOffsetY\",\"shadowRoot\",\"shape\",\"shape-rendering\",\"shapeRendering\",\"sheet\",\"shift\",\"shiftKey\",\"shiftLeft\",\"show\",\"showHelp\",\"showModal\",\"showModalDialog\",\"showModelessDialog\",\"showNotification\",\"sidebar\",\"sign\",\"signalingState\",\"sin\",\"singleNodeValue\",\"sinh\",\"size\",\"sizeToContent\",\"sizes\",\"skewX\",\"skewXSelf\",\"skewY\",\"skewYSelf\",\"slice\",\"slope\",\"small\",\"smil\",\"smooth\",\"smoothingTimeConstant\",\"snapToLines\",\"snapshotItem\",\"snapshotLength\",\"some\",\"sort\",\"source\",\"sourceBuffer\",\"sourceBuffers\",\"sourceIndex\",\"spacing\",\"span\",\"speakAs\",\"speaking\",\"specified\",\"specularConstant\",\"specularExponent\",\"speechSynthesis\",\"speed\",\"speedOfSound\",\"spellcheck\",\"splice\",\"split\",\"splitText\",\"spreadMethod\",\"sqrt\",\"src\",\"srcElement\",\"srcFilter\",\"srcUrn\",\"srcdoc\",\"srclang\",\"srcset\",\"stack\",\"stackTraceLimit\",\"stacktrace\",\"standalone\",\"standby\",\"start\",\"startContainer\",\"startIce\",\"startOffset\",\"startRendering\",\"startTime\",\"startsWith\",\"state\",\"status\",\"statusMessage\",\"statusText\",\"statusbar\",\"stdDeviationX\",\"stdDeviationY\",\"stencilFunc\",\"stencilFuncSeparate\",\"stencilMask\",\"stencilMaskSeparate\",\"stencilOp\",\"stencilOpSeparate\",\"step\",\"stepDown\",\"stepMismatch\",\"stepUp\",\"sticky\",\"stitchTiles\",\"stop\",\"stop-color\",\"stop-opacity\",\"stopColor\",\"stopImmediatePropagation\",\"stopOpacity\",\"stopPropagation\",\"storageArea\",\"storageName\",\"storageStatus\",\"storeSiteSpecificTrackingException\",\"storeWebWideTrackingException\",\"stpVersion\",\"stream\",\"strike\",\"stringValue\",\"stringify\",\"stroke\",\"stroke-dasharray\",\"stroke-dashoffset\",\"stroke-linecap\",\"stroke-linejoin\",\"stroke-miterlimit\",\"stroke-opacity\",\"stroke-width\",\"strokeDasharray\",\"strokeDashoffset\",\"strokeLinecap\",\"strokeLinejoin\",\"strokeMiterlimit\",\"strokeOpacity\",\"strokeRect\",\"strokeStyle\",\"strokeText\",\"strokeWidth\",\"style\",\"styleFloat\",\"styleMedia\",\"styleSheet\",\"styleSheetSets\",\"styleSheets\",\"sub\",\"subarray\",\"subject\",\"submit\",\"subscribe\",\"substr\",\"substring\",\"substringData\",\"subtle\",\"subtree\",\"suffix\",\"suffixes\",\"summary\",\"sup\",\"supports\",\"surfaceScale\",\"surroundContents\",\"suspend\",\"suspendRedraw\",\"swapCache\",\"swapNode\",\"sweepFlag\",\"symbols\",\"system\",\"systemCode\",\"systemId\",\"systemLanguage\",\"systemXDPI\",\"systemYDPI\",\"tBodies\",\"tFoot\",\"tHead\",\"tabIndex\",\"table\",\"table-layout\",\"tableLayout\",\"tableValues\",\"tag\",\"tagName\",\"tagUrn\",\"tags\",\"taintEnabled\",\"takeRecords\",\"tan\",\"tanh\",\"target\",\"targetElement\",\"targetTouches\",\"targetX\",\"targetY\",\"tel\",\"terminate\",\"test\",\"texImage2D\",\"texParameterf\",\"texParameteri\",\"texSubImage2D\",\"text\",\"text-align\",\"text-anchor\",\"text-decoration\",\"text-decoration-color\",\"text-decoration-line\",\"text-decoration-style\",\"text-indent\",\"text-overflow\",\"text-rendering\",\"text-shadow\",\"text-transform\",\"textAlign\",\"textAlignLast\",\"textAnchor\",\"textAutospace\",\"textBaseline\",\"textContent\",\"textDecoration\",\"textDecorationBlink\",\"textDecorationColor\",\"textDecorationLine\",\"textDecorationLineThrough\",\"textDecorationNone\",\"textDecorationOverline\",\"textDecorationStyle\",\"textDecorationUnderline\",\"textIndent\",\"textJustify\",\"textJustifyTrim\",\"textKashida\",\"textKashidaSpace\",\"textLength\",\"textOverflow\",\"textRendering\",\"textShadow\",\"textTracks\",\"textTransform\",\"textUnderlinePosition\",\"then\",\"threadId\",\"threshold\",\"tiltX\",\"tiltY\",\"time\",\"timeEnd\",\"timeStamp\",\"timeout\",\"timestamp\",\"timestampOffset\",\"timing\",\"title\",\"toArray\",\"toBlob\",\"toDataURL\",\"toDateString\",\"toElement\",\"toExponential\",\"toFixed\",\"toFloat32Array\",\"toFloat64Array\",\"toGMTString\",\"toISOString\",\"toJSON\",\"toLocaleDateString\",\"toLocaleFormat\",\"toLocaleLowerCase\",\"toLocaleString\",\"toLocaleTimeString\",\"toLocaleUpperCase\",\"toLowerCase\",\"toMethod\",\"toPrecision\",\"toSdp\",\"toSource\",\"toStaticHTML\",\"toString\",\"toStringTag\",\"toTimeString\",\"toUTCString\",\"toUpperCase\",\"toggle\",\"toggleLongPressEnabled\",\"tooLong\",\"toolbar\",\"top\",\"topMargin\",\"total\",\"totalFrameDelay\",\"totalVideoFrames\",\"touchAction\",\"touches\",\"trace\",\"track\",\"transaction\",\"transactions\",\"transform\",\"transform-origin\",\"transform-style\",\"transformOrigin\",\"transformPoint\",\"transformString\",\"transformStyle\",\"transformToDocument\",\"transformToFragment\",\"transition\",\"transition-delay\",\"transition-duration\",\"transition-property\",\"transition-timing-function\",\"transitionDelay\",\"transitionDuration\",\"transitionProperty\",\"transitionTimingFunction\",\"translate\",\"translateSelf\",\"translationX\",\"translationY\",\"trim\",\"trimLeft\",\"trimRight\",\"trueSpeed\",\"trunc\",\"truncate\",\"type\",\"typeDetail\",\"typeMismatch\",\"typeMustMatch\",\"types\",\"ubound\",\"undefined\",\"unescape\",\"uneval\",\"unicode-bidi\",\"unicodeBidi\",\"uniform1f\",\"uniform1fv\",\"uniform1i\",\"uniform1iv\",\"uniform2f\",\"uniform2fv\",\"uniform2i\",\"uniform2iv\",\"uniform3f\",\"uniform3fv\",\"uniform3i\",\"uniform3iv\",\"uniform4f\",\"uniform4fv\",\"uniform4i\",\"uniform4iv\",\"uniformMatrix2fv\",\"uniformMatrix3fv\",\"uniformMatrix4fv\",\"unique\",\"uniqueID\",\"uniqueNumber\",\"unitType\",\"units\",\"unloadEventEnd\",\"unloadEventStart\",\"unlock\",\"unmount\",\"unobserve\",\"unpause\",\"unpauseAnimations\",\"unreadCount\",\"unregister\",\"unregisterContentHandler\",\"unregisterProtocolHandler\",\"unscopables\",\"unselectable\",\"unshift\",\"unsubscribe\",\"unsuspendRedraw\",\"unsuspendRedrawAll\",\"unwatch\",\"unwrapKey\",\"update\",\"updateCommands\",\"updateIce\",\"updateInterval\",\"updateSettings\",\"updated\",\"updating\",\"upload\",\"upper\",\"upperBound\",\"upperOpen\",\"uri\",\"url\",\"urn\",\"urns\",\"usages\",\"useCurrentView\",\"useMap\",\"useProgram\",\"usedSpace\",\"userAgent\",\"userLanguage\",\"username\",\"v8BreakIterator\",\"vAlign\",\"vLink\",\"valid\",\"validateProgram\",\"validationMessage\",\"validity\",\"value\",\"valueAsDate\",\"valueAsNumber\",\"valueAsString\",\"valueInSpecifiedUnits\",\"valueMissing\",\"valueOf\",\"valueText\",\"valueType\",\"values\",\"vector-effect\",\"vectorEffect\",\"velocityAngular\",\"velocityExpansion\",\"velocityX\",\"velocityY\",\"vendor\",\"vendorSub\",\"verify\",\"version\",\"vertexAttrib1f\",\"vertexAttrib1fv\",\"vertexAttrib2f\",\"vertexAttrib2fv\",\"vertexAttrib3f\",\"vertexAttrib3fv\",\"vertexAttrib4f\",\"vertexAttrib4fv\",\"vertexAttribDivisorANGLE\",\"vertexAttribPointer\",\"vertical\",\"vertical-align\",\"verticalAlign\",\"verticalOverflow\",\"vibrate\",\"videoHeight\",\"videoTracks\",\"videoWidth\",\"view\",\"viewBox\",\"viewBoxString\",\"viewTarget\",\"viewTargetString\",\"viewport\",\"viewportAnchorX\",\"viewportAnchorY\",\"viewportElement\",\"visibility\",\"visibilityState\",\"visible\",\"vlinkColor\",\"voice\",\"volume\",\"vrml\",\"vspace\",\"w\",\"wand\",\"warn\",\"wasClean\",\"watch\",\"watchPosition\",\"webdriver\",\"webkitAddKey\",\"webkitAnimation\",\"webkitAnimationDelay\",\"webkitAnimationDirection\",\"webkitAnimationDuration\",\"webkitAnimationFillMode\",\"webkitAnimationIterationCount\",\"webkitAnimationName\",\"webkitAnimationPlayState\",\"webkitAnimationTimingFunction\",\"webkitAppearance\",\"webkitAudioContext\",\"webkitAudioDecodedByteCount\",\"webkitAudioPannerNode\",\"webkitBackfaceVisibility\",\"webkitBackground\",\"webkitBackgroundAttachment\",\"webkitBackgroundClip\",\"webkitBackgroundColor\",\"webkitBackgroundImage\",\"webkitBackgroundOrigin\",\"webkitBackgroundPosition\",\"webkitBackgroundPositionX\",\"webkitBackgroundPositionY\",\"webkitBackgroundRepeat\",\"webkitBackgroundSize\",\"webkitBackingStorePixelRatio\",\"webkitBorderImage\",\"webkitBorderImageOutset\",\"webkitBorderImageRepeat\",\"webkitBorderImageSlice\",\"webkitBorderImageSource\",\"webkitBorderImageWidth\",\"webkitBoxAlign\",\"webkitBoxDirection\",\"webkitBoxFlex\",\"webkitBoxOrdinalGroup\",\"webkitBoxOrient\",\"webkitBoxPack\",\"webkitBoxSizing\",\"webkitCancelAnimationFrame\",\"webkitCancelFullScreen\",\"webkitCancelKeyRequest\",\"webkitCancelRequestAnimationFrame\",\"webkitClearResourceTimings\",\"webkitClosedCaptionsVisible\",\"webkitConvertPointFromNodeToPage\",\"webkitConvertPointFromPageToNode\",\"webkitCreateShadowRoot\",\"webkitCurrentFullScreenElement\",\"webkitCurrentPlaybackTargetIsWireless\",\"webkitDirectionInvertedFromDevice\",\"webkitDisplayingFullscreen\",\"webkitEnterFullScreen\",\"webkitEnterFullscreen\",\"webkitExitFullScreen\",\"webkitExitFullscreen\",\"webkitExitPointerLock\",\"webkitFullScreenKeyboardInputAllowed\",\"webkitFullscreenElement\",\"webkitFullscreenEnabled\",\"webkitGenerateKeyRequest\",\"webkitGetAsEntry\",\"webkitGetDatabaseNames\",\"webkitGetEntries\",\"webkitGetEntriesByName\",\"webkitGetEntriesByType\",\"webkitGetFlowByName\",\"webkitGetGamepads\",\"webkitGetImageDataHD\",\"webkitGetNamedFlows\",\"webkitGetRegionFlowRanges\",\"webkitGetUserMedia\",\"webkitHasClosedCaptions\",\"webkitHidden\",\"webkitIDBCursor\",\"webkitIDBDatabase\",\"webkitIDBDatabaseError\",\"webkitIDBDatabaseException\",\"webkitIDBFactory\",\"webkitIDBIndex\",\"webkitIDBKeyRange\",\"webkitIDBObjectStore\",\"webkitIDBRequest\",\"webkitIDBTransaction\",\"webkitImageSmoothingEnabled\",\"webkitIndexedDB\",\"webkitInitMessageEvent\",\"webkitIsFullScreen\",\"webkitKeys\",\"webkitLineDashOffset\",\"webkitLockOrientation\",\"webkitMatchesSelector\",\"webkitMediaStream\",\"webkitNotifications\",\"webkitOfflineAudioContext\",\"webkitOrientation\",\"webkitPeerConnection00\",\"webkitPersistentStorage\",\"webkitPointerLockElement\",\"webkitPostMessage\",\"webkitPreservesPitch\",\"webkitPutImageDataHD\",\"webkitRTCPeerConnection\",\"webkitRegionOverset\",\"webkitRequestAnimationFrame\",\"webkitRequestFileSystem\",\"webkitRequestFullScreen\",\"webkitRequestFullscreen\",\"webkitRequestPointerLock\",\"webkitResolveLocalFileSystemURL\",\"webkitSetMediaKeys\",\"webkitSetResourceTimingBufferSize\",\"webkitShadowRoot\",\"webkitShowPlaybackTargetPicker\",\"webkitSlice\",\"webkitSpeechGrammar\",\"webkitSpeechGrammarList\",\"webkitSpeechRecognition\",\"webkitSpeechRecognitionError\",\"webkitSpeechRecognitionEvent\",\"webkitStorageInfo\",\"webkitSupportsFullscreen\",\"webkitTemporaryStorage\",\"webkitTextSizeAdjust\",\"webkitTransform\",\"webkitTransformOrigin\",\"webkitTransition\",\"webkitTransitionDelay\",\"webkitTransitionDuration\",\"webkitTransitionProperty\",\"webkitTransitionTimingFunction\",\"webkitURL\",\"webkitUnlockOrientation\",\"webkitUserSelect\",\"webkitVideoDecodedByteCount\",\"webkitVisibilityState\",\"webkitWirelessVideoPlaybackDisabled\",\"webkitdropzone\",\"webstore\",\"weight\",\"whatToShow\",\"wheelDelta\",\"wheelDeltaX\",\"wheelDeltaY\",\"which\",\"white-space\",\"whiteSpace\",\"wholeText\",\"widows\",\"width\",\"will-change\",\"willChange\",\"willValidate\",\"window\",\"withCredentials\",\"word-break\",\"word-spacing\",\"word-wrap\",\"wordBreak\",\"wordSpacing\",\"wordWrap\",\"wrap\",\"wrapKey\",\"write\",\"writeln\",\"writingMode\",\"x\",\"x1\",\"x2\",\"xChannelSelector\",\"xmlEncoding\",\"xmlStandalone\",\"xmlVersion\",\"xmlbase\",\"xmllang\",\"xmlspace\",\"y\",\"y1\",\"y2\",\"yChannelSelector\",\"yandex\",\"z\",\"z-index\",\"zIndex\",\"zoom\",\"zoomAndPan\",\"zoomRectScreen\"]");
  22479. /***/ }),
  22480. /***/ "@javascript-obfuscator/escodegen":
  22481. /*!***************************************************!*\
  22482. !*** external "@javascript-obfuscator/escodegen" ***!
  22483. \***************************************************/
  22484. /*! dynamic exports */
  22485. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22486. /*! runtime requirements: module */
  22487. /***/ ((module) => {
  22488. module.exports = require("@javascript-obfuscator/escodegen");;
  22489. /***/ }),
  22490. /***/ "acorn":
  22491. /*!************************!*\
  22492. !*** external "acorn" ***!
  22493. \************************/
  22494. /*! dynamic exports */
  22495. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22496. /*! runtime requirements: module */
  22497. /***/ ((module) => {
  22498. module.exports = require("acorn");;
  22499. /***/ }),
  22500. /***/ "chalk":
  22501. /*!************************!*\
  22502. !*** external "chalk" ***!
  22503. \************************/
  22504. /*! dynamic exports */
  22505. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22506. /*! runtime requirements: module */
  22507. /***/ ((module) => {
  22508. module.exports = require("chalk");;
  22509. /***/ }),
  22510. /***/ "chance":
  22511. /*!*************************!*\
  22512. !*** external "chance" ***!
  22513. \*************************/
  22514. /*! dynamic exports */
  22515. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22516. /*! runtime requirements: module */
  22517. /***/ ((module) => {
  22518. module.exports = require("chance");;
  22519. /***/ }),
  22520. /***/ "class-validator":
  22521. /*!**********************************!*\
  22522. !*** external "class-validator" ***!
  22523. \**********************************/
  22524. /*! dynamic exports */
  22525. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22526. /*! runtime requirements: module */
  22527. /***/ ((module) => {
  22528. module.exports = require("class-validator");;
  22529. /***/ }),
  22530. /***/ "eslint-scope":
  22531. /*!*******************************!*\
  22532. !*** external "eslint-scope" ***!
  22533. \*******************************/
  22534. /*! dynamic exports */
  22535. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22536. /*! runtime requirements: module */
  22537. /***/ ((module) => {
  22538. module.exports = require("eslint-scope");;
  22539. /***/ }),
  22540. /***/ "estraverse":
  22541. /*!*****************************!*\
  22542. !*** external "estraverse" ***!
  22543. \*****************************/
  22544. /*! dynamic exports */
  22545. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22546. /*! runtime requirements: module */
  22547. /***/ ((module) => {
  22548. module.exports = require("estraverse");;
  22549. /***/ }),
  22550. /***/ "eventemitter3":
  22551. /*!********************************!*\
  22552. !*** external "eventemitter3" ***!
  22553. \********************************/
  22554. /*! dynamic exports */
  22555. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22556. /*! runtime requirements: module */
  22557. /***/ ((module) => {
  22558. module.exports = require("eventemitter3");;
  22559. /***/ }),
  22560. /***/ "fast-deep-equal":
  22561. /*!**********************************!*\
  22562. !*** external "fast-deep-equal" ***!
  22563. \**********************************/
  22564. /*! dynamic exports */
  22565. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22566. /*! runtime requirements: module */
  22567. /***/ ((module) => {
  22568. module.exports = require("fast-deep-equal");;
  22569. /***/ }),
  22570. /***/ "inversify":
  22571. /*!****************************!*\
  22572. !*** external "inversify" ***!
  22573. \****************************/
  22574. /*! dynamic exports */
  22575. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22576. /*! runtime requirements: module */
  22577. /***/ ((module) => {
  22578. module.exports = require("inversify");;
  22579. /***/ }),
  22580. /***/ "js-string-escape":
  22581. /*!***********************************!*\
  22582. !*** external "js-string-escape" ***!
  22583. \***********************************/
  22584. /*! dynamic exports */
  22585. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22586. /*! runtime requirements: module */
  22587. /***/ ((module) => {
  22588. module.exports = require("js-string-escape");;
  22589. /***/ }),
  22590. /***/ "md5":
  22591. /*!**********************!*\
  22592. !*** external "md5" ***!
  22593. \**********************/
  22594. /*! dynamic exports */
  22595. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22596. /*! runtime requirements: module */
  22597. /***/ ((module) => {
  22598. module.exports = require("md5");;
  22599. /***/ }),
  22600. /***/ "reflect-metadata":
  22601. /*!***********************************!*\
  22602. !*** external "reflect-metadata" ***!
  22603. \***********************************/
  22604. /*! dynamic exports */
  22605. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22606. /*! runtime requirements: module */
  22607. /***/ ((module) => {
  22608. module.exports = require("reflect-metadata");;
  22609. /***/ }),
  22610. /***/ "string-template":
  22611. /*!**********************************!*\
  22612. !*** external "string-template" ***!
  22613. \**********************************/
  22614. /*! dynamic exports */
  22615. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22616. /*! runtime requirements: module */
  22617. /***/ ((module) => {
  22618. module.exports = require("string-template");;
  22619. /***/ }),
  22620. /***/ "stringz":
  22621. /*!**************************!*\
  22622. !*** external "stringz" ***!
  22623. \**************************/
  22624. /*! dynamic exports */
  22625. /*! exports [maybe provided (runtime-defined)] [no usage info] */
  22626. /*! runtime requirements: module */
  22627. /***/ ((module) => {
  22628. module.exports = require("stringz");;
  22629. /***/ })
  22630. /******/ });
  22631. /************************************************************************/
  22632. /******/ // The module cache
  22633. /******/ var __webpack_module_cache__ = {};
  22634. /******/
  22635. /******/ // The require function
  22636. /******/ function __webpack_require__(moduleId) {
  22637. /******/ // Check if module is in cache
  22638. /******/ if(__webpack_module_cache__[moduleId]) {
  22639. /******/ return __webpack_module_cache__[moduleId].exports;
  22640. /******/ }
  22641. /******/ // Create a new module (and put it into the cache)
  22642. /******/ var module = __webpack_module_cache__[moduleId] = {
  22643. /******/ // no module.id needed
  22644. /******/ // no module.loaded needed
  22645. /******/ exports: {}
  22646. /******/ };
  22647. /******/
  22648. /******/ // Execute the module function
  22649. /******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
  22650. /******/
  22651. /******/ // Return the exports of the module
  22652. /******/ return module.exports;
  22653. /******/ }
  22654. /******/
  22655. /************************************************************************/
  22656. /******/ // module exports must be returned from runtime so entry inlining is disabled
  22657. /******/ // startup
  22658. /******/ // Load entry module and return exports
  22659. /******/ return __webpack_require__("./index.ts");
  22660. /******/ })()
  22661. ;
  22662. //# sourceMappingURL=index.js.map